Tutaj fragment kodu

var input_form =["first_text","middle_text","last_text","suffix_text","title_text","url_text","day_pnum","mon_pselect","year_pnum","day_anum","mon_aselect","year_anum"];

Gdzie "First_text", "Middle_Text", ... odnosi się do różnych identyfikatorów w moim HTML

Mogę uzyskać do niego dostęp przez {x0}}, (wewnątrz pętli) Ale muszę użyć jQuery, więc co jest nie tak, gdy piszę powyższy kod w jQuery jako $(input_form[i]), aby uzyskać ten sam wynik

1
Shikhar 24 czerwiec 2017, 10:23

5 odpowiedzi

Najlepsza odpowiedź

Ponieważ jQuery są selektory zapytań (lub selektory CSS), do identyfikatora musisz prefiks z #. Więc używaj w ten sposób:

$("#" + input_form[i])
2
Praveen Kumar Purushothaman 24 czerwiec 2017, 07:25

W przypadku selektorów ID jQuery używa funkcji JavaScript document.getElementById(), co jest niezwykle wydajne. Gdy inny wybierak jest przymocowany do selektora identyfikatora jako #. Możesz użyć poniżej:

$("#" + input_form[i])

Lub

$('[id=input_form[i]]')

Aby uzyskać więcej informacji

0
lalithkumar 24 czerwiec 2017, 07:28
for (var i = 0; i < input_form.length; i++) {
 var $el = $('#' + input_form[i]);
}

$ el dałoby Ci referencje jquery elementu

0
gauravmuk 24 czerwiec 2017, 07:28

Tęskniłeś za Selectora, spróbuj z tym:

$("#" + input_form[i])

Mam nadzieję, że to pomoże!

0
darode 24 czerwiec 2017, 07:27

Zależy od Twoich potrzeb, można również wybrać wszystkie dane wejściowe jako obiekt JQUERY, jest taki przypadek, dla którego możesz dla np. Zadzwoń .val(''), aby oczyścić wszystkie. Przykład:

var input_form =["first_text","middle_text","last_text","suffix_text","title_text","url_text","day_pnum","mon_pselect","year_pnum","day_anum","mon_aselect","year_anum"];
var inputs_selector = input_form.map(s => "#" + s).join(",");
// reset all values
$(inputs_selector).val('');
0
Paweł Lula 24 czerwiec 2017, 07:42