HTML:
<div id="panel">
<table>
<tr>
<td><input id="Search_NazovProjektu" type="text" value="" /></td>
</tr>
<tr>
<td><input id="Search_Popis" type="text" value="" /></td>
</tr>
</table>
</div>
Ich muss alle Eingänge in der jeweiligen div auswählen.
Das funktioniert nicht:
var i = $("#panel > :input");
jquery
jquery-selectors
user137348
quelle
quelle
:
ist für Pseudoklassen, nicht wahr? Wir wollen aber einen Elementtyp auswählen. Warum das:
?Du brauchst
oder je nachdem, was genau Sie wollen (siehe unten)
Der
>
Wille beschränkt sich auf Kinder, Sie wollen alle Nachkommen.EDIT: Wie Nick betonte, gibt es einen subtilen Unterschied zwischen
$("#panel input")
und$("#panel :input)
.Die erste wird nur Elemente vom Typ Eingabe abzurufen, das heißt
<input type="...">
, aber nicht<textarea>
,<button>
und<select>
Elemente. Danke Nick, wusste das selbst nicht und korrigierte meinen Beitrag entsprechend. Ich habe beide Optionen verlassen, weil das OP das wohl auch nicht bemerkt hat und - technisch gesehen - nach Eingaben gefragt hat ... :-)quelle
Die 'find'-Methode kann verwendet werden, um alle untergeordneten Eingaben eines Containers abzurufen, der bereits zwischengespeichert wurde, um zu verhindern, dass er erneut nachgeschlagen wird (während die' children'-Methode nur die unmittelbaren untergeordneten Elemente abruft). z.B
quelle
Wenn Sie ein Framework wie Ruby on Rails oder Spring MVC verwenden, müssen Sie möglicherweise Divs mit eckigen Klammern oder anderen Zeichen verwenden, die Sie nicht verwenden dürfen.
document.getElementById
Diese Lösung funktioniert weiterhin, wenn Sie mehrere Eingaben mit demselben Typ haben.Dieses Beispiel zeigt, wie Sie die Eingaben löschen. Sie müssen sie beispielsweise ändern.
quelle
sollte arbeiten :-)
das> holt nur direkte Kinder, keine Kinderkinder
das: dient zur Verwendung von Pseudoklassen, z. : schweben usw.
Informationen zu verfügbaren CSS-Selektoren von Pseudoklassen finden Sie hier: http://docs.jquery.com/DOM/Traversing/Selectors#CSS_Selectors
quelle
:input
ist auch ein Selektor, api.jquery.com/category/selectors/form-selectors Wenn er einen<textarea>
oder-Buttoninput
hätte,:input
würde er ihn nicht finden, würde es also einen Unterschied geben.Hier ist mein Ansatz:
Sie können es in anderen Fällen verwenden.
quelle