2016-05-23 10 views
1

Als ichsetProperty ist keine Funktion (...)

$wnd.document.getElementById('id'); 

verwenden Sie arbeitet erfolgreich und ich bekomme das Element. Aber, wenn ich versuche, property wie folgt festgelegt:

$wnd.document.getElementById('id').setProperty("Property","value"); 

Es bringt mir eine Fehlermeldung:

Uncaught TypeError: $wnd.document.getElementById(...).setProperty is not a function(…)

Mit dem, was Fehler in meinem Code kann es verkettet werden?

+0

I Eigenschaft auf diese Weise einstellen: ' elem = $ wnd.document.getElementById ('id'); elem [property] = value; 'Aber ich möchte wissen, aus welchem ​​Grund dieser Pfad nicht funktioniert:' $ wnd.document.getElementById ('id'). setProperty ("Property", "value"); ' –

+0

In IE habe ich Ausnahme abgefangen' Objekt unterstützt keine Eigenschaft oder Methode 'setProperty'' –

Antwort

2

Es sieht so aus, als würden Sie diesen Code innerhalb einer JSNI-Methode ausführen, was bedeutet, dass es sich um Javascript handelt. Die Methode setProperty ist nur für ein JavaScript Element verfügbar und hat nichts mit der GWT-Methode setPropertyString() oder ähnlichem zu tun.

So folgt aus:

elem =$wnd.document.getElementById('id'); 
elem[property] = value; 

entspricht dies:

$wnd.document.getElementById('id').setAttribute("property","value"); 

setProperty würde so für die Style-Eigenschaften arbeiten:

$wnd.document.getElementById('id').style.setProperty("color","blue");