2012-11-21 1 views
-1

Je dois faire une table avec des lignes cliquables (pour cela j'ai trouvé quelques solutions JS). Lorsque je clique sur une ligne, un formulaire sera rempli avec les données de la ligne cliquée.Comment? cliquez sur la ligne du tableau HTML et envoyez les données de la ligne à PHP (comme POST)

Mais je ne sais pas comment envoyer les données de la table HTML à PHP, quand je clique sur cette ligne. Les données doivent être envoyées comme POST, comme je l'ai mentionné dans le titre. Je n'ai aucune idée de comment commencer, donc je ne peux pas vous montrer rien. L'utilisation de plusieurs formulaires à l'intérieur d'une même table n'est pas autorisée, le tag autour n'est pas autorisé non plus, donc je suis bloqué. D'après ce que j'ai cherché sur le web, la solution serait AJAX, mais je ne suis pas familiarisé avec cela, je n'ai jamais utilisé AJAX, donc si possible, une solution non-AJAX serait très appréciée. Sinon, montrez-moi un exemple fonctionnel.

Merci beaucoup!

EDITrésolu

En fin de compte, je l'ai fait sans AJAX, grâce aux idées de emartel et Guerra. J'ai fait un seul formulaire avec un champ de saisie caché et je l'ai soumis par programmation, après avoir recueilli les données requises de la ligne sur laquelle j'ai cliqué.

J'ai fait écho aux balises tr comme ceci: <tr data-id=$id_from_db onclick="submit_id(this)">.

 

    function submit_id(tableRow) { 
     //get ID 
     var myID = tableRow.dataset.id; 

     //set ID 
     var setID  = document.getElementById('order_id'); 
      setID.value = myID; 

     //submit 
     var form = document.getElementById('myform'); 
     form.submit(); 
    }; 

P.S. J'ai essayé d'incorporer du code PHP, mais j'ai échoué, il n'a pas été montré sur la page.

+0

juste 1 question. Si vous connaissez la solution est AJAX, combien vous avez essayé de vous familiariser avec elle? – itachi

+0

votre problème peut être résolu avec un certain code jquery. Créez un exemple de fichier et laissez-nous savoir pour vous donner plus d'informations. –

+0

[** jqgrid **] (http://trirand.com/blog/jqgrid/jqgrid.html) lisez les documents et vous l'aurez. – itachi

Répondre

0

Après avoir rempli votre formulaire (name="myform" et method="post") à partir de JavaScript, appelez simplement:

document.myform.submit(); 

Cela devrait faire le travail

0

Vous pouvez mettre une sorte d'entrée caché sur chaque ligne avec un ID. Donc, vous pouvez utiliser seulement 1 formulaire en passant l'ID pour soumettre un message et récupérer l'ensemble du registre sur le serveur.

Questions connexes