2012-04-06 1 views
0

Ich habe here gewesen und fand dementsprechend heraus, dass dieses Stück Code hierWie findet man ein Element innerhalb eines Elements mit der ID des Elements, das abgerufen und als Parameter übergeben werden soll?

var node_exists=$(treeselector).find("li[id^='someid']"); 

wo treeselector der Selektor, in dem auf das Element ist die Elemente für contained.This Feinarbeiten perfekt durchsucht werden sollen.

Wenn ich jedoch im id^= 'someid' Teil versuche, 'someid' in eine Variable zu ändern, die die ID enthält, dann hört es auf zu arbeiten.

var someid='someid' 
var node_exists=$(treeselector).find("li[id^=someid]"); 

Ich habe auch versucht, einzelne Anführungszeichen zu verketten, wenn der Parameter in der Funktion erhalten wird, wo dies ausgelöst wird. Ich denke, das könnte mit den doppelten Anführungszeichen rund um den li [id^= 'someid'] Teil zu tun haben. Irgendeine Idee, wie das funktioniert?

Prost !!

Antwort

1

Concatenate:

var someVar = 'id1'; 
var node_exists=$(treeselector).find("li[id^="+someVar+"]"); 
+0

Arbeitete ... jetzt ist es klingt blöd .... ein Neuling im, sorry..will die Antwort akzeptieren, sobald ich kann – Ashwin

+0

BTW, "[Attribut = val]" ist eine der langsameren (wie bei niedrigen Leistungen) Möglichkeiten, die Sie in jquery eine Auswahl treffen können. Sie sollten es besser machen, wenn möglich, ID und Klassensyntax zu verwenden: li.someClassName oder li # someIdName anstatt von [attr = val] – Kristian

Verwandte Themen