2009-07-14 15 views
5

Ich habe eine FunktionKann ich ein jQuery-Objekt aus einem vorhandenen Elemente

function toggleSelectCancels(e) { 
     var checkBox = e.target; 
     var cancelThis = checkBox.checked; 

     var tableRow = checkBox.parentNode.parentNode; 

} 

bekommen, wie kann ich ein jQuery-Objekt erhalten, die TableRow enthält Normalerweise würde ich $("#" + tableRow.id) gehen, das Problem hier ist die ID für TableRow ist etwas wie das "x:1280880471.17:adr:2:key:[95]:tag:". Es wird automatisch von einem Infragistics-Steuerelement generiert. jQuery scheint nicht getElementById, wenn die ID wie folgt ist. Der Standard dom document.getElementById("x:1280880471.17:adr:2:key:[95]:tag:") gibt jedoch das korrekte Zeilenelement zurück.

Wie auch immer, gibt es eine Möglichkeit, ein jQuery-Objekt von einem dom-Element zu bekommen?

Danke, ~ ck in San Diego

Antwort

2

Sie können die jQuery-Funktion auf DOM-Elemente aufrufen:

var tableRowJquery = $(checkBox).closest('tr'); 
: $(tableRow)

Sie auch die closest Methode von jQuery in diesem Fall verwenden können

Wenn Sie weiterhin Ihre ID verwenden möchten, kgiannakakis (unten), zur Verfügung gestellt eine hervorragende Verbindung auf, wie zu escape characters with special meaning in a jQuery selector.

2

jQuery können die DOM-Elemente nehmen, versuchen Sie mit:

$(tableRow) 

oder

$(checkBox.parentNode.parentNode) 
0

Versuch:

var r = $(document.getElementById("XXXX----ID Of Your Row----XXXX")); 

jetzt, wenn document.getElementById nicht undefiniert zurückkehren können Sie r wie jede normale Jquery-Objekt verwenden.

2

Sie sollten in der Lage sein, das Element gerade in passieren, wie folgt aus:

$(tableRow)... 

ich diese getestet wurden durch einen Verweis auf ein div zu schaffen, dann ist es gerade in jQuery vorbei und es schafft das jQuery-Objekt für Sie.

Verwandte Themen