Per qualche motivo non sono in grado di recuperare gli ingressi nascosti da id utilizzando jQuery.Targeting ingressi nascosti da id utilizzando jQuery
posso fare
> $('input')
[<input type="checkbox" name="property-type" id checked>, <input type="checkbox" name="property-type" id checked>, <input type="checkbox" name="property-type" id>, <input type="checkbox" name="property-type" id>, <input type="hidden" name="no-of-rooms" id="1-rooms">, <input type="hidden" name="no-of-rooms" id="2-rooms" checked>, <input type="hidden" name="no-of-rooms" id="3-rooms" checked>, <input type="hidden" name="no-of-rooms" id="4-rooms">, <input type="hidden" name="no-of-rooms" id="5-rooms">, <input type="hidden" name="no-of-rooms" id="over-5-rooms">, <input type="checkbox" name="property-type" id>, <input type="checkbox" name="property-type" id>, <input type="checkbox" name="property-type" id>]
che mi ottiene tutti gli ingressi sulla pagina bene, compresi quelli di tipo = nascosto.
posso anche fare
> $('input[type="hidden"]')
[<input type="hidden" name="no-of-rooms" id="1-rooms">, <input type="hidden" name="no-of-rooms" id="2-rooms" checked>, <input type="hidden" name="no-of-rooms" id="3-rooms" checked>, <input type="hidden" name="no-of-rooms" id="4-rooms">, <input type="hidden" name="no-of-rooms" id="5-rooms">, <input type="hidden" name="no-of-rooms" id="over-5-rooms">]
che ottiene me tutti i miei campi nascosti. Nota che hanno tutti un ID.
Per qualche motivo, tentare di indirizzare questi input tramite il loro ID, con o senza lo [type="hidden"]
incluso, mi fornirà una lista vuota.
> $('input[type="hidden"]#2-rooms')
[]
> $('input#2-rooms')
[]
sono riuscito a trovare una soluzione alternativa, semplicemente non li targeting per la loro ID-s, ma sarebbe utile sapere perché questo non sembra possibile.
EDIT
Usando solo $('#2-rooms')
funziona per me ed è a quanto pare l'approccio migliore. Tuttavia, non sono ancora sicuro del motivo per cui $('input#2-rooms')
non funziona, poiché I includeva il doctype html5 (<!DOCTYPE html>
) e capisco che gli id che iniziano con i numeri dovrebbero in questo caso essere a posto.
Ti è capitato di provare '$ ('# 2-rooms')' –
Molto probabilmente non stai usando HTML5, e prima di HTML5, gli ID non potevano iniziare con un carattere numerico. Prova ad usare il doctype html5 per confermare: '' (oppure puoi semplicemente cambiare l'id per non usare un carattere numerico come primo carattere) –
Stupido per non provare '$ ('# 2-stanze') ', che funziona (anche se preferirei comunque specificare che è un input per chiarezza ..). Ho anche provato ora '$ ('input # over-5-rooms')' che non inizia con un numero e funziona pure. Ho incluso il doctype html5, quindi questo non dovrebbe essere il problema, anche confermato dal fatto che '$ ('# 2-rooms')' sembra funzionare bene. – Elise