在我的一个网页中有一个webedit,最多可以接受250个字符。在该网站下面还有另一个webedit,显示剩下的字符数。
虽然我可以使用qtp输入第一个webebit中的字符,但是剩下的字符数没有被更新。
我已经使用过设备重播选项,但遗憾的是它无效。
答案 0 :(得分:0)
你的意思是设备重放本身不起作用,或者在使用之后,剩余的字符数量没有得到更新?
为了显示webedit中剩余的字符数,开发人员通常使用javascript将消息更改为(文本字段的最大长度 - 字段值的最大长度)。当焦点在文本框等上时释放密钥时,此javascript与文本框的某些事件相关联,如onkeyup。
当触发此事件时,将调用javascript函数并更新消息。
使用QTP设置方法通常会设置文本框的值,在该文本框中不会触发与控件关联的事件。
为了触发这些事件,您可以使用以下方法(无论哪种对您有帮助,您都可以尝试使用它)
1。尝试再次单击文本框,有时这也可以在某些应用程序中执行
Browser("Test").Page("Test").WebEdit("Test").Set "Test"
Browser("Test").Page("Test").WebEdit("Test").Click
2。您可以尝试在QTP中使用FireEvent方法
Browser("Test").Page("Test").WebEdit("Test").Set "India"
Browser("Test").Page("Test").WebEdit("Test").FireEvent "onclick"
注意 - 尝试其他事件,如onkeydown,onkeyup,onkeypress,onblur等
3。您可以使用您必须首先创建shell对象的Sendkeys 实施例
Set WshShell = CreateObject("WScript.Shell")
Browser("Test").Page("Test").WebEdit("Test").Set "India"
WshShell.SendKeys ""
注意 - 您也可以在sendkeys中输入文本而不是空白
您可能还想查看:
http://www.knowledgeinbox.com/articles/qtp/settings/when-to-change-qtp-web-replaytype-setting/
如果没有任何作用,请告诉我们,我们可以尝试寻找其他解决方案。