0

我正在编写一个包含输入字段标签的网络应用程序。例如:

<label for="surname">Family Name:</label>...<input id="surname" ...></input>

我希望能够编写一个 XPath 表达式,该表达式采用文本“姓氏:”来匹配标签,然后从标签中获取“for”属性并使用它通过匹配其“id”来查找关联的输入标签“ 标签。

我可以使这个“工作”如下:

//label[contains(.,"Family Name:")]/following::input[1]

但是,对于这个 web 应用程序,我认为匹配 for/id 会更可靠。(EG:我如何确定在所有可能的布局中,标签后面的第一个输入标签是我想要的?如果在下面的某个地方使用从右到左的脚本呈现该页面会发生什么?

我的最终目标是创建一个库函数,我们可以使用它在网页之前编写 QA 脚本以进行测试,当我们只有一张图片或文档,其中输入字段标记为“姓氏:”并且不知道什么 id一些程序员最终会分配给该领域。

4

1 回答 1

1

也许这就是你要找的东西?

//input[@id = //label[contains(., "Family Name:")]/@for]

至于您的最终目标,您可能想看看 Ruby 的XPath gem。你正在做的一些事情可能已经在那里实施了。(具体来说,请查看库的HTML Helpers

于 2013-08-08T21:01:49.107 回答