我正在尝试从以下链接中检索“onclick”属性值:
<a onclick="test" href="myurl">aaa</a>
使用link.href
工作正常(所以我知道link
是正确的对象)但是当使用link.attribute_value("onclick")
我得到的是一个 win32 对象(放置显示#<WIN32OLE:0x2cbdf10>
而不是"test"
字符串)。
如果你没有得到一个更整洁的解决方案,而且它是一次性的(如果你能确保开发过程下次记住这种测试)。试试:
onclick_value=browser.html[ %r{<a onclick="(.*?)" href="myurl">}mi, 1 ]
这对我有用(Windows 2003,ruby 1.8.7,watir 1.6.5):
browser.link(:href => /myurl/).attribute_value("onclick")
# => "test"
在 Mac 上使用 watir-webdriver gem 驱动 Firefox 进行测试:
browser.link(:href => "myurl").html.split('"')[3]
# => "myurl"
使用 watir gem 驱动 IE 在 Windows 上测试:
browser.link(:href => /myurl/).html.split('"')[1]
# => "myurl"