6
我在com.google.gwt.dom.client.Element類中看不到任何方法,它允許我獲取元素節點的所有屬性。我錯過了什麼?在GWT中,如何獲取HTML DOM中元素的所有屬性?
大概我可以通過放入本機代碼來獲得底層Javascript對象的屬性數組?我知道結果是依賴於瀏覽器的,但似乎已知的解決方法。我沒有深入到原生JS,所以如果有人能告訴我如何去做,那將是一個獎金。
我在com.google.gwt.dom.client.Element類中看不到任何方法,它允許我獲取元素節點的所有屬性。我錯過了什麼?在GWT中,如何獲取HTML DOM中元素的所有屬性?
大概我可以通過放入本機代碼來獲得底層Javascript對象的屬性數組?我知道結果是依賴於瀏覽器的,但似乎已知的解決方法。我沒有深入到原生JS,所以如果有人能告訴我如何去做,那將是一個獎金。
我在GWT尋找一種方便的方法,但很驚訝,我找不到一個。
大概我可以通過放入本機代碼來獲取底層JavaScript對象的屬性數組?我知道結果是依賴於瀏覽器,...
是的,JSNI,您可以定義返回元素的「屬性」屬性作爲一個合適的Java對象的方法:
public static native JsArray<Node> getAttributes(Element elem) /*-{
return elem.attributes;
}-*/;
你可以像這樣使用它:
final JsArray<Node> attributes = getAttributes(element);
for (int i = 0; i < attributes.length(); i ++) {
final Node node = attributes.get(i);
String attributeName = node.getNodeName();
String attributeValue = node.getNodeValue();
...
}
謝謝,我會給它一個。 – 2011-02-27 08:43:18
小點; elem.attributes不是一個數組(儘管它可以像一個訪問) - 它實際上是一個https://developer.mozilla.org/en-US/docs/Web/API/NamedNodeMap – 2013-06-12 05:38:26