Watir - 如何访问通过Javascript生成的输入类型=文本元素?

时间:2012-05-28 13:04:05

标签: javascript ruby watir watir-webdriver

我是Ruby(Watir)和Javascript的新手。如果一个网站使用动态(通过点击按钮等)生成按钮的Javascript代码,我不知道如何访问它们。它可能有自己的名称或ID,但我甚至无法检查它,因为生成的按钮不是通过浏览器在网页的源代码上建立的......

我认为这可能是一个答案;

browser = Watir::Browser.new(:firefox)
browser.send_keys :tab

直到我意识到我似乎没有办法引用聚焦按钮,即使我通过制表键将焦点设置在目标上......

编辑:谢谢你们。我认为这是一个菜鸟问题,现在我只是面临另一个大问题(所有生成的按钮共享完全相同的属性!!,所以我无法指定哪个),但这是另一个故事......

** EDIT2:我刚刚解决了第二个问题。

browser.button(:attribute => "same", :index => *).click

此!

Noob问题

2012.5 - 2012.5

1 个答案:

答案 0 :(得分:3)

Firefox有一个检查元素的工具。您应该能够右键单击元素并选择“检查元素”菜单选项。然后按HTML按钮查看该按钮的源。

一旦看到源,您应该能够确定其属性,以便像任何其他按钮一样单击按钮(假设按钮已经可见)。

所以你会有一个像:

这样的剧本
browser = Watir::Browser.new(:firefox)
browser.goto('http://my.page')
#Click the button that generates the other buttons
browser.button(:id, 'generate_buttons_button').click 
#Click the newly displayed buttons once they appear
generated_button = browser.button(:id, 'generated_button')
generated_button.wait_until_present
generated_button.click