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

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

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

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

直到我意识到我似乎没有办法引用焦点按钮,即使我通过Tab键将焦点设置在目标上也是如此…

编辑:谢谢大家.我认为这是一个菜鸟问题,我现在面临另一个大问题(所有生成的按钮都具有完全相同的属性!,所以我无法指定哪个属性),但这是另一回事了……

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

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

这个!

菜鸟问题

2012.5-2012.5

解决方法:

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
上一篇:在Ruby脚本中执行Shell脚本命令


下一篇:大杂烩 -- 四种生成和解析XML文档的方法详解