Wie Tabelle set cell value mit jquery
Ich würde gerne den Wert der Zellen einer Tabelle Durchlaufen werden.
Idealerweise würde ich gerne den Zugriff auf eine Html-Tabelle wie ein array, d.h. $("#tbl")[row][col]="5"
Funktioniert das nicht.
$(document).ready(function() {
for (var row = 0; row < 3; row++) {
for (var col = 0; col < 3; col++) {
$("#tbl").children().children()[row].children()[col].append("sdfasdf");
}
}
});
Funktioniert es, aber ich weiß nicht, warum!!!
- Ich verstehe nicht, $("#Tabelle").Kinder().Kinder() warum die Notwendigkeit für die 2. Kinder
- Warum ist die 3. Kinder, die keine Funktion ist, d.h. (Kinder) wie der 1. 2.
- Warum is ' NT innerHTML nicht eine Funktion, D. H. innerHTML()
$(document).ready(function() { for (var row = 0; row < 3; row++) { for (var col = 0; col < 3; col++) { $("#tbl").children().children()[row].children[col].innerHTML = "H!"; } } });
Sorry, ich kann nicht formatieren, mein code Bearbeiten, scheint Nicht zu funktionieren
Siehe mein edit für die Antworten zu deinen nummerierten Fragen. Siehe stackoverflow.com/editing-help für die code-Formatierung - ich werde bereinigen diese Frage für Sie.
Siehe mein edit für die Antworten zu deinen nummerierten Fragen. Siehe stackoverflow.com/editing-help für die code-Formatierung - ich werde bereinigen diese Frage für Sie.
InformationsquelleAutor David | 2011-04-11
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie nur wollen, um die Iteration über alle Zellen in der Tabelle, eine der folgenden arbeiten:
Wenn Sie wollen, um den Zugriff auf die Tabelle wie ein array, du gehst zu haben, um ein array selbst:
Aber jQuery nicht verfügbar machen eine API, so dass Sie (jemals) in der Lage sein zu tun, einfache Zuordnung, wie in
arr[row][col] = 5;
. Mit den oben genannten array, das funktioniert:Demo
Bearbeiten
Weil die jQuery -
.children()
- Funktion gibt nur einen Satz des Elements unmittelbaren Nachkommen, nicht alle Nachkommen (Kinder + Enkel + ...).Weil, wenn Sie verwenden der array Schreibweise zuzugreifen Elemente einer jQuery-collection, erhalten Sie die zugrunde liegende DOM-element, nicht ein jQuery-Objekt. Verwenden
.eq(i)
statt[i]
:Wie in der Antwort auf Ihre Frage #2,
...children()[col]
wieder ein DOM-element, nicht ein jQuery-Objekt. Die meisten Browser unterstützen das DOM- element.innerHTML
Eigenschaft.Bei der Verwendung
.eq(i)
statt[i]
, wie oben, mit den.html()
jQuery-Funktion.Vielen Dank für die Reinigung meiner Frage. Ich Schätze deine Erklärung, Aber ich bevorzuge meine Antwort auf die erste Frage (Für alle man auf der Suche nach einer Lösung", Wie Tabelle set Wert der Zelle mit Hilfe von jquery").
Toller post.... Funktionierte perfekt...
InformationsquelleAutor Matt Ball
Können Sie versuchen, mit diesem Selektor
$('#myTable tr:nth-child('+row+') td:nth-child('+col'+)').html("sdfasdf");
InformationsquelleAutor pconcepcion
InformationsquelleAutor scrappedcola
Wenn Sie wollen einfach nur den Wert zuzuweisen, der zu allen Zellen, die versuchen, diese:
Wenn Sie möchten, zu extrahieren die Zellen als 2-dimensionales array:
und dann irgendwo im code.
InformationsquelleAutor Chandu
Meinst du wie diese?
Live-demo hier : http://jsfiddle.net/8xFFH/
Durchläuft alle TD ' s, so dass Sie wissen, die Sie sind in. Sie können auch einfach verwenden
$('table tr td').append()
wenn es eine statische Anhängen.InformationsquelleAutor JohnP