GWT按属性获取元素

时间:2014-01-24 10:08:52

标签: gwt

我可以通过哪种方式获取GWT Elements的属性?我想通过给出特定的属性和属性值来获取所有元素。

<input type = "text" class = "get-TextBox" nature = "price"/>
<input type = "text" class = "get-TextBox" nature = "address"/>
<input type = "text" class = "get-TextBox" nature = "price"/>

在snipet上方,我希望通过“ nature 属性获取输入元素,并包含“ price <的属性值 / EM>”。

  

在我的实际问题中,它们是由动态而不是在同一个面板中创建的。许多元素具有“自然”属性和“价格”属性值。所以,我正在使用DOM Handler。

例如:JQuery (get element by attribute),这是我的主要观点。

但请不要建议(迭代并检查它的属性)。我找到了最简单的方法。

我真的很感激你的建议!

1 个答案:

答案 0 :(得分:3)

您可以使用此代码:

NodeList<Element> elements = Document.get().getElementsByTagName("input");

获取所有输入。下一步应该是遍历列表并使用以下命令检查属性:

for (int i = 0; i < elements.getLength(); i++) {
    if (elements.getItem(i).getAttribute("nature").equals("price")) {
        // found it
    }
}

更好的方法是使用属性 id 而不是自然。在这种情况下,您将获得以下元素:

Document.get().getElementById("price")

备选方案,您可以使用Errai将小部件绑定到本机HTML。