如何在xpath中表达文本框的值?
刚刚输入文本框的文字。
所以如果我在文本框中键入apple,我需要在xpath中输出this的值。
答案 0 :(得分:0)
首先,如果你这样做超过一次或两次,重复执行xpath的开销可能是不可取的。
document.evaluate("id('textareaid')", document, null, XPathResult.STRING_TYPE,null).stringValue;`
将从textarea内部返回文本,但之后不返回文本输入。
您想要的是值属性而不是值属性。 xpath只能看到属性,而不能看到属性。
所以......要获得textarea输入的值,你需要:
var mytextarea = document.evaluate("id('textareaid')", document, null, XPathResult.FIRST_ORDERED_NODE_TYPE,null).singleNodeValue;
var text = mytextarea.value;
注意:document.getElementById()比只按id搜索的xpath要好得多。我假设你的情况更复杂,所以我已经保留了xpath结构。
有关详细信息,请参阅https://developer.mozilla.org/en/Introduction_to_using_XPath_in_JavaScript。