probleme avec javascript

debutant
Invité n'ayant pas de compte PHPfrance

11 juil. 2011, 19:11

Bonjour,

Merci pour votre support ;

mon probléme est le suivant :

j'essaie de recuperer un resultat de recherche et l'affecter directement dans un formulaire,mais j'obtiens toujours l'erreur document.getElementById null.

le fax est affiché dans cette input.



Code : Tout sélectionner

echo " <td><input readonly =\"readonly\" name=\"source5\" id=\"source5\" value=\"$data->fax \" ></td>\n";

je souhaite recuperer ce resultat dans un formulaire avec des champs incrementables:

Code : Tout sélectionner

$(function(){ $('p#add_field2').click(function(){ count2 += 1; $('#container2').append( '<strong>Fax #' + count2 + '</strong><br />' + '<input id="field2_' + count2 + '" name="fields2[]' + '" type="text" /><br />' ); }); }); <div id="container2"> <p id="add_field2"><span>&raquo; Fax</span></a></p> </div>


j'ai voulu proceder comme ceci mais c'est l'echec:

Code : Tout sélectionner

echo"document.getElementById('fields2_1').value=document.getElementById('source5').value;";

ViPHP
AB
ViPHP | 5818 Messages

11 juil. 2011, 21:17

Bonjour, c'est quoi cette ligne : echo"document.getElementById('fields2_1').value=document.getElementById('source5').value;" ?

document.getElementById('fields2_1').value c'est une méthode javascript pour trouver la valeur de l'input ayant l'identifiant 'fields2_1'. Donc il faut t'en servir dans une méthode javascript et pas tenter de la faire afficher avec php #-o

D'ailleurs je ne vois nulle par l'identifiant 'fields2_1' dans ton code.

Invité
Invité n'ayant pas de compte PHPfrance

11 juil. 2011, 21:39

Merci de votre attention sur mon probléme :)

j'ai ce petit formulaire dans mon index:

Code : Tout sélectionner

<form name="test" method="post" action="" > <a> <label for="name">&raquo;Civilit&eacute;:</label></a> <div class="spacer"></div> <select name="civilite"> <option value="Monsieur">Monsieur</option> <option value="Madame">Madame</option> <option value="Mademoiselle">Mademoiselle</option> </select> <div class="spacer"></div> <a> <label for="name">&raquo;Nom:</label></a> <input type="text" name="name" id="name" /> <div class="spacer"></div> <a> <label for="name">&raquo;Pr&eacute;nom:</label></a> <input type="text" name="prenom" id="prenom" /> <div id="container2"><p id="add_field2"><span>&raquo; Fax</span></a></p> </div> <input id="go" name="btnSubmit" type="submit" value="Enregistrer" class="btn" />
l'ajout des champs a l'aide de ce code dans l 'index:

Code : Tout sélectionner

$(function(){ $('p#add_field2').click(function(){ count2 += 1; $('#container2').append( '<strong>Fax #' + count2 + '</strong><br />' + '<input id="field2_' + count2 + '" name="fields2[]' + '" type="text" /><br />' ); }); });

et dans un autre fichier que j ai nommé search.php , je fais une petite recherche dans une base de donnés pour m'affciher le nom , prenom et le fax
qui me retourne ceci:

Code : Tout sélectionner

if($req->rowCount()>0) { while($data = $req->fetch(PDO::FETCH_OBJ)) { echo "<table width=\"1271\" border=\"1\">"; echo " <td><input readonly =\"readonly\" name=\"source2\" id=\"source2\" value=\" $data->name \" ></td> \n"; echo " <td><input readonly =\"readonly\" name=\"source3\" id=\"source3\" value=\" $data->prenom \" ></td> \n"; echo " <td><input readonly =\"readonly\" name=\"source5\" id=\"source5\" value=\"$data->fax \" ></td>\n";
echo" <td> <input type=\"radio\" name=\"duplication\" id=\"duplication1\" value=\"oui\" onclick=\"foncabc();\"></td>\n";

echo "</table>";
}

}

[/CODE]

je voulais en cliquant sur le bouton radio le resultat de la recherche remplit directement dans le formulaire alors j'y ajouté ce Js ans le fichier search.php

Code : Tout sélectionner

echo "function foncabc(){"; echo "document.getElementById('name').value=document.getElementById('source2').value;"; echo"document.getElementById('prenom').value=document.getElementById('source3').value;"; echo"document.getElementById('field2_1').value=document.getElementById('source5').value;"; echo"}"; echo"</script>";

ViPHP
AB
ViPHP | 5818 Messages

11 juil. 2011, 23:07

Et tu l'appelle où et comment ce fichier search.php ? C'est une requête ajax ? Si oui regardes dans jquery il y a une méthode qui permet de rajouter des fonctions js une fois le DOM chargé.

Sinon pourquoi ne pas mettre ta fonction foncabc() dans le javascript initial de ta page ?