Finden Sie den nächsten textarea mit Jquery
HTML
<tr id="rowId"><td><textarea class="inputTextarea"></textarea></td><td><textarea class="inputTextarea"></textarea></td></tr>
<tr id="rowId2"><td><textarea class="inputTextarea"></textarea></td><td><textarea class="inputTextarea"></textarea></td></tr>
<tr id="rowId3"><td><textarea class="inputTextarea"></textarea></td><td><textarea class="inputTextarea"></textarea></td></tr>
Sofern ich weiß, rowId, wie finde ich die nächste textarea AUF DIESER SEITE ein, beginnend an jedem beliebigen Punkt. Ich meine nicht, JEDER input, textarea nur. Ich muss in der Lage sein, um starten ZU JEDER Zeile, und Fortschritt auf die nächste textarea, im wesentlichen geht nach unten die Zeilen.
BEARBEITEN
Basierend auf den Antworten, die ich verwendete den folgenden code, um die traverse Texteingabefelder Zeile für Zeile:
var curElt = $('#' + startAt); //startAt is the first row id
for(var i=1; i < 10; i++) {
$(curElt).find('textarea').eq(0).val(i);
$(curElt).find('textarea').eq(1).val(i+1);
curElt = $(curElt).next();
}
Basierend auf der Vielzahl von Antworten scheint es, dass Ihre Frage ist eindeutig nicht klar genug. Tun Sie nur bedeuten, dass Sie wollen, um das äquivalent von drücken Sie die Tab-Taste, wobei der Schwerpunkt der nächsten text-Bereich durch einen source-code um/tabIndex? Was bedeutet der Zeilen-id, die damit zu tun haben?
Ich habe eine Reihe von Zeilen, die jeweils über eine eindeutige ID verfügt. Ein Benutzer kann start-einfügen von Daten zu einem bestimmten textarea (es gibt 2 textarea-Elemente pro Zeile). Die Daten werden im CSV-Daten aus Excel. Meine Aufgabe ist es, füllen Sie die Texteingabefelder ab der ein Benutzer eingefügt (damit ich weiß, die Zeilen-ID, die Sie ab) und auf. Ich bin mir nicht sicher, wie zu erklären, mich selbst besser. Ich denke, TAB-Vergleich funktioniert.
Ich habe eine Reihe von Zeilen, die jeweils über eine eindeutige ID verfügt. Ein Benutzer kann start-einfügen von Daten zu einem bestimmten textarea (es gibt 2 textarea-Elemente pro Zeile). Die Daten werden im CSV-Daten aus Excel. Meine Aufgabe ist es, füllen Sie die Texteingabefelder ab der ein Benutzer eingefügt (damit ich weiß, die Zeilen-ID, die Sie ab) und auf. Ich bin mir nicht sicher, wie zu erklären, mich selbst besser. Ich denke, TAB-Vergleich funktioniert.
InformationsquelleAutor sarsnake | 2011-01-05
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie die
next
undMethoden:
next
erhalten die nächsten verwandten und dannfind
finden sich alle Elemente innerhalb der Menge, die mit dem übergebenen Selektor(s), danneq(0)
greifen, werden das erste element in der Ergebnismenge zurückgegeben, die vonfind
.Die next () - Methode ist für die Geschwister. Wenn Sie eine Tabelle auswählen Zeile, dann werden Sie nicht finden textarea-Elemente unter den Geschwistern oder der Zeile.
Dank Jakob, sehr nützlich
InformationsquelleAutor Jacob Relkin
Finden die beiden Kinder der Reihe. Wenn Sie möchten, dass die ersten ein, entweder:
Bearbeiten: Wenn Sie wissen nur eine Zeile und auf der Suche nach dem ersten textarea in die nächste Zeile:
wäre es schneller zu finden, alle Texteingabefelder auf der Seite?
Ich weiß nicht, was du meinst. Sie benötigen mehr klar ist, was "weiter" bedeutet.
siehe Frage bearbeitet
Noch nicht klar genug für mich. Es Klang aus Ihren Kommentaren, dass Sie beide wollen an einem Punkt beginnen dann aber vielleicht halten der Suche nach dem nächsten, wie Sie die tab-Taste. Das sind zwei verschiedene Dinge.
InformationsquelleAutor Phrogz
Nur um zu klären, $.fn.next() findet die nächste Geschwister in der DOM.
Sie haben zu finden, seine Eltern-tr (
$textarea.closest('tr') ).
( .next() )
textarea innerhalb , dass tr (
.find('textarea').eq(0) )
InformationsquelleAutor draeton
Versuchen Sie dies:
InformationsquelleAutor Chandu