Ho un elemento DOM con un ID simile a:Trova elemento DOM per ID quando l'ID contiene parentesi quadre?
something[500]
che è stata costruita da mio Ruby on Rails applicazione. Devo essere in grado di ottenere questo elemento tramite jQuery in modo da poter attraversare il mio modo sul DOM per eliminare il genitore del suo genitore, che ha un ID variabile a cui non ho accesso in precedenza.
Qualcuno sa come potrei fare questo? Il seguente codice non sembra funzionare:
alert($("#something["+id+"]").parent().parent().attr("id"));
Ulteriori controlli in seguito, il seguente:
$("#something["+id+"]")
restituisce un oggetto, ma quando ho eseguito ".html()" o" .text() "su di esso, il risultato è sempre nullo o solo una stringa vuota.
Qualsiasi aiuto sarebbe molto apprezzato.
In aggiunta alla risposta corretta (che è quella hai bisogno di sfuggire al parentesi con doppi backslash), dovresti usare veramente le chiamate a (più) (anziché a più genitore(). È più pulito e meno probabile che si interrompa se accade un cambiamento ... Quindi se stai cercando di ottenere il div più vicino fai più .closest ('div') o anche meglio .closest ('div.meaningfulclassthatiwant') –
Grazie per il suggerimento Paolo, ma come ho detto non conosco l'ID/classe del genitore che sto cercando in anticipo, e poiché entrambi i genitori sono div, il più vicino non funzionerebbe. Grazie comunque. –
Ah, scusate, non ho letto la domanda ho solo guardato il titolo e il codice in esso :) Indovina che mi serve giusto. –