gpt4 book ai didi

javascript - capybara 在动态环境中的模糊性

转载 作者:行者123 更新时间:2023-11-28 02:34:19 24 4
gpt4 key购买 nike

这是一个常见问题,到目前为止我已经能够缓解这个问题。

考虑到动态 html/php 的依赖关系很重,因此是不可更改的。

我的页面源看起来像这样

 <div id="unique">
<div id="ambiguous">
<a href="EditMS(unique record num)">Edit</a> <!--Javascript-->
</div>
<div id="ambiguous">
<a href="EditApple(unique record num)">Edit</a> <!--Javascript-->
</div>
</div>

我过去遇到过不明确的问题,并且能够通过执行底层 JavaScript 来缓解这些问题,但现在我觉得由于动态记录数而无法解决这些问题。

问题一:我可以使用 xpath 或类似的方法来访问正确的编辑链接吗?问题二:我能以某种方式获取动态记录号,然后执行javascript吗?

最佳答案

有几种方法可以使用 css 来做到这一点。您可以获取所有匹配的 id,或者如果链接 href 总是这样,您可以使用 css 属性匹配。例如:

find('#unique').all('#ambiguous').each do |ambiguous| 
# conditions in here
end

或者您可以使用 ^= 表示匹配开始,使用 *= 表示某处匹配,使用 $= 表示匹配结束

find('a[href^="Edit"]')find('a[href*="Apple"]')

希望有帮助。我看到一个正则表达式可以在不久的将来获得该值。喜欢:

"EditApple293845093405983049".match(/\d+/)[0]
# => 293845093405983049

关于javascript - capybara 在动态环境中的模糊性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13672337/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com