使用带有 UFT 的 .Set 写入文本框

Write in textBox using .Set with UFT

我正在使用 Iexplorer 自动化 Web 门户。我正在使用 UFT V11.50。

我在写入文本框时遇到问题。我使用以下语句:

Browser ("browser"). Page ("page"). Frame ("Calendar"). WebEdit ("_ CALCOD"). Set "5"

我用 .SET 写给他的文本框,它有效,但没有记录。在文本框编号 5 中写入,但一秒钟后消失。我在其他文本框中感觉不一样。

我不明白发生在我身上的事。你能帮忙吗?

您的编辑字段响应的 HTML 事件可能与 UFT 使用的不同(UFT 使用最常见的事件)。

解决此问题的一种方法是使用 device replay,这意味着 UFT 将模拟一个人坐在键盘前并模拟计算机的实际输入设备,因此,如果真人设置了编辑字段的值,浏览器将触发所有事件。

有关设备重播模式的更多详细信息,请参阅this answer

Setting.WebPackage("ReplayType") = 2 ' Enter device mode

Browser("browser").Page("page").Frame("Calendar").WebEdit("_CALCOD").Set "5"

Setting.WebPackage("ReplayType") = 1 ' Return to event mode

我终于找到了解决我的问题的方法如下:

Public function writeText(field) 
  Set x = Browser("browser").Page("page").Frame("Calendar").WebEdit("_CALCOD")
  x.Object.innertext=field  
End Function

field = 5

可能我的答案不是最优的,但它奏效了。