最佳答案
假设我有这个(简化的) :
<form id="myform">
<!-- some input fields -->
<input type="submit" value="proceed"/>
</form>
然后我可以通过 XPath//form[@id='myform']/input[@type='submit']
选择提交按钮。
但是,我的模板可能会发生变化,我希望在提交按钮所在的深度方面保持灵活性。可以放在桌子上,像这样:
<form id="myform">
<!-- some input fields -->
<table><tr><td>
<input type="submit" value="proceed"/>
</td></tr></table>
</form>
我知道我可以选择孙子辈的元素,但是我不能选择任何深度的孙子辈。例如:
//form[@id='myform']/*/input[@type='submit']
只选择孙子,没有进一步的深度。//form[@id='myform']/*/*/input[@type='submit']
只选择孙子孙女,没有进一步或更少的深度。//form[@id='myform']/**/input[@type='submit']
无效。那么,如何在不使用元素 ID 的情况下可靠地选择这个提交按钮呢?