Ich habe eine Seite, die dynamische Formulare und Tabellen enthält, die mit AJAX abgerufen werden. Ich versuche, jede Tabelle zu zielen, abhängig davon, welche Schaltfläche zum Senden von Dateien gesendet wurde, aber aus irgendeinem Grund scheint jquery die eindeutige ID der Tabellen nicht zu sehen. Ich vermute, dass jquery nur die ID der ersten Tabelle holt, aber ich verstehe nicht warum?Warum sieht Jquery die eindeutige ID nicht?
console.log(tableid)
druckt myTable1
auf allen Tasten lege ich auf der Seite jedoch drücken die HTML-Inspektion zeigt mir, dass alle IDs der myTable
einzigartig sind zB myTable1,myTable2,myTable3
..... und so weiter.
Die dynamische Form und Tabelle
<form id="myForm" class="myForm" action="" method="post" style="">
<input type="hidden" name="page_id" value="'.$id.'">
<button type="submit" class="fabutton"></i></button>
</form> <!--END OF FORM---->
<table id="myTable'.$i.'" class="table"><!--$i increments by 1 with each form---->
<tbody>
<tr>
</tr>
</tbody>
</table>
Die jquery (auf einer anderen Seite, wo die Form und Tabelle wiedergegeben werden)
$(document).on('submit', '.myForm', '.results', function(e) {
var tableid = $('.table').attr('id'); //Get table id
console.log(tableid)
Wäre sinnvoller sein, die zu sehen ** gerendert ** HTML, anstatt Ihren dynamischen Code. –
Auch - Ihr Formular enthält die Tabelle nicht, also wie würde es wissen, welche Tabelle zu betrachten? Ihre jQuery sagt nur "finde die erste Tabelle und bekomme die ID". Und es tut .. Welchen Tisch soll es bekommen? –
$ ('. Table') würde ein Array von Elementen zurückgeben, also wenn Sie versuchen, eine ID zu erhalten, gibt es die ersten Elemente id zurück – Geeky