jQuery自动完成 - 强制选择/测试

时间:2013-08-08 08:12:19

标签: javascript jquery integration-testing jquery-autocomplete

我有一个带有'medID'

ID的simpe jQuery自动完成输入框
$('#medID').val("Par").focus().keydown();

我使用上面的代码在框中放置一个值,触发焦点,然后按下键进行搜索。

它返回1-5个值。

如何自动选择其中一个建议值?

我试过了:

$('#medID').children()[0].focus().click();

$('#medID').children().focus().click();

但建议的自动完成值是输入框的直接chilren?

这样我就可以在不需要用户的情况下测试我的系统的这一部分。

2 个答案:

答案 0 :(得分:1)

我不是100%肯定,但我认为浏览器禁止此操作。您的请求可能会变得不可能。

如果可能,恶意脚本可以访问用户之前输入input字段的数据,例如信用卡号码或电子邮件地址,使用与您概述的脚本一样的脚本。这将是一个非常糟糕的安全漏洞。

很抱歉。也许您可以通过循环输入您想要测试的输入值并调用$('#medID').val(testValueHere)来解决这个问题?

答案 1 :(得分:0)

jQuery UI团队为自己的unit tests for autocomplete做类似的事情。有关详细信息,请参阅this answer