View previous topic :: View next topic |
Author |
Message |
dawei Smarty Rookie
Joined: 14 Dec 2006 Posts: 11
|
Posted: Thu Dec 14, 2006 4:15 pm Post subject: javascript et smarty |
|
|
Hello,
dans la templete, j'ai saisie:
Code: |
{literal}
<script type="text/javascript">
<!--
function testjs(){
alert("js ok");
}
//-->
</script>
{/literal}
|
et dans la partie php, j'ai sasie:
Code: |
$select = & $form->addElement('select', 'nom', afficher_message( 'nom a saisir' ) , null, array('class' => 'Fixe'), array('onclick="javascript:testjs()"'));
|
Pourquoi le code ne fonctionne pas?
J'ai essayé de plusieurs manieres, mais rien a faire.
J'ai meme essayé de remplacer "onclick="javascript:testjs()" par "onclick=> javascript:testjs()
Lors de l'execution, il n'y a pas de probleme. Le probleme, c'est que j'appele mal la fonction...
Merci _________________ /\_ Le forum est là lorsqu'on a besoin d'aide. _/\ |
|
Back to top |
|
ciboulette Smarty Regular
Joined: 13 Jul 2006 Posts: 45
|
Posted: Fri Dec 15, 2006 2:14 am Post subject: |
|
|
aucun message d'erreur?
quand tu affiche la source de la page html tu retrouve bien ton onclick="javascript:testjs()" ou pas?
tu utilise PEAR:HTML_QuickForm ? |
|
Back to top |
|
dawei Smarty Rookie
Joined: 14 Dec 2006 Posts: 11
|
Posted: Fri Dec 15, 2006 10:17 am Post subject: |
|
|
Hello,
oui, j'utiliser pear quickform.
mais je vois pas pourquoi lorsque je click sur la combo box, il ne m'affiche pas "appel de la fonction reussi"...
ma methode ne semble pas etre correcte _________________ /\_ Le forum est là lorsqu'on a besoin d'aide. _/\ |
|
Back to top |
|
ciboulette Smarty Regular
Joined: 13 Jul 2006 Posts: 45
|
Posted: Fri Dec 15, 2006 12:26 pm Post subject: |
|
|
moi perso j'aurai fait :
Code: |
$data = array('1' => 'marc', '2' => 'alex', '2' => 'sophie', '3' => 'polo'
);
$form->addElement('select', 'nom', 'nom a saisir' ,$data,'onclick="javascript:testjs()"');
|
enfin d'ailleur c'est se que je fait |
|
Back to top |
|
dawei Smarty Rookie
Joined: 14 Dec 2006 Posts: 11
|
Posted: Fri Dec 15, 2006 12:55 pm Post subject: |
|
|
Salut,
merci l'ami, je vais pouvoir y replonger dans mes codes
Ton code marche super bien.
Au fait, si je veux affecter une valeur de la partie javascript vers la partie $fom via la methode $form->setDefaults(array( 'nom' => "nouveau nom) ) ;
sais-tu comment s'y prendre?
Merci _________________ /\_ Le forum est là lorsqu'on a besoin d'aide. _/\ |
|
Back to top |
|
ciboulette Smarty Regular
Joined: 13 Jul 2006 Posts: 45
|
Posted: Sat Dec 16, 2006 6:22 pm Post subject: |
|
|
j'ai pas vraiment compris la question ta pas un exemple ? |
|
Back to top |
|
dawei Smarty Rookie
Joined: 14 Dec 2006 Posts: 11
|
Posted: Tue Dec 19, 2006 9:39 am Post subject: |
|
|
bonjour,
Au fait, j'ai d'un coté tout le code php et de l'autre le gabarit .tpl
J'appele ma fonction javascript depuis le code php avec la fonction testjs() dans les debuts de lignes du gabarit .
partie php
Code: |
$form->addElement('text', 'nom_personne' , afficher_message( 'nom de la personne' ) ) ;
$form->setDefaults( array( 'nom_personne' => $tab_personne[ 'nom' ] ) ) ;
$select = & $form->addElement('select', 'num client', afficher_message( 'numero client:' ) , null, array('class' => 'Fixe'));
$select->addOption( afficher_message( 'Choisir un numero client' ),'' ) ;
|
partie tpl
Code: |
{literal}
<script type="text/javascript">
function testjs(){
alert("js ok");
......=>là je sais pas comment re-affecter un champ texte nom de la personne avec une recherche dans la base par exemple
}
</script>
{/literal}
|
J'informe par un alert(".....") lors de l'acces.
Mais j'aimerai affecter un des champs du formulaire créé précédemment.
Merci _________________ /\_ Le forum est là lorsqu'on a besoin d'aide. _/\ |
|
Back to top |
|
jbenzakin Smarty Rookie
Joined: 09 Nov 2006 Posts: 6 Location: austin
|
Posted: Tue Dec 19, 2006 10:32 pm Post subject: replie |
|
|
tu peut etre plus precis???? |
|
Back to top |
|
ciboulette Smarty Regular
Joined: 13 Jul 2006 Posts: 45
|
Posted: Wed Dec 20, 2006 12:26 am Post subject: |
|
|
tu veu dire quoi par affecter ? l'affecer a quoi ? si c pour re crée un champ input voi avec le DHTML . avec comment rendre des element visible ou invisible si tu veux ne pas recharger la page voix en plus avec AJAX (c'est a la mode en ce momen il parait) |
|
Back to top |
|
jbenzakin Smarty Rookie
Joined: 09 Nov 2006 Posts: 6 Location: austin
|
Posted: Wed Dec 20, 2006 2:18 am Post subject: ajax |
|
|
ajax est a la mode en ce moment en france aussi?? je suis francais mais je travaille aux etat unis en tant que web developer est ajax toute les boite le demande maintenant........ |
|
Back to top |
|
dawei Smarty Rookie
Joined: 14 Dec 2006 Posts: 11
|
Posted: Wed Dec 20, 2006 9:06 am Post subject: |
|
|
j'entends affecter par "remplacer une valeur d'un champ de texte ( ajouté dans le formulaire php) par une nouvelle variable créée dans la fonction de javascript"
Code: |
php:
$form->addElement('select,'choix','noclient',"onchange=affichePseudo()");
$form->addElement('texte','nomcli','nom de la personne');
gabarits:
{literal}
<script type="text/javascript">
function affichePseudo(pseudo){
// je veux une connaitre comment rechercher dans la base puis afficher le nom du client, puis reaffecter dans le champs "nomcli"
}
</script>
{/literal}
|
Je sais pas comment m'y prendre :/
Merci _________________ /\_ Le forum est là lorsqu'on a besoin d'aide. _/\ |
|
Back to top |
|
ciboulette Smarty Regular
Joined: 13 Jul 2006 Posts: 45
|
Posted: Fri Dec 22, 2006 3:00 pm Post subject: |
|
|
ba pour remplir un champ input avec javascript tu fait :
Code: |
document.nomdetonformulaire.nomduchamp.value = "tontexte";
| [/code] |
|
Back to top |
|
|