我正在使用webdriver和Ruby ...
所以我能够使用下面的脚本将文本写入tinymce字段。但是在最后一行,driver.execute ...我想改变静态值' bob'作为传递的变量的值,parValue。我尝试了对driver.execute_script行的一些修改,但我仍然遇到错误。换句话说,我不知道javascript,我无法找到办法。
我已经尝试更换代码并使用sendkeys,但这并没有在我的tinymce框中打印任何东西。有没有办法使用从parValue传入的值并替换' bob'?
def enterValues(driver,parField,parValue)
tinymce_frame = driver.find_element(:id => parField)
driver.switch_to.default_content
driver.switch_to.frame(tinymce_frame)
editor_body = driver.find_element(:tag_name => 'body')
driver.execute_script("arguments[0].innerHTML = 'bob'", editor_body)
end
答案 0 :(得分:0)
这看起来很简单,所以我担心我可能会误解,但您可以使用ruby的字符串插值将bob
替换为parvalue
:
def enterValues(driver,parField,parValue)
tinymce_frame = driver.find_element(:id => parField)
driver.switch_to.default_content
driver.switch_to.frame(tinymce_frame)
editor_body = driver.find_element(:tag_name => 'body')
driver.execute_script("arguments[0].innerHTML = '#{parValue}'", editor_body)
end