【问题标题】:jQuery Auto-complete - Force Selection/TestingjQuery 自动完成 - 强制选择/测试
【发布时间】:2014-05-24 00:10:40
【问题描述】:

我有一个简单的 jQuery 自动完成输入框,ID 为“medID”

$('#medID').val("Par").focus().keydown();

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

它返回 1-5 个值。

如何让它自动选择建议值之一?

我试过了:

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

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

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

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

【问题讨论】:

  • 你想要this这样的东西吗?
  • 是的,但我无法使用组合框进行操作:(
  • 看看here(第二个答案,第一个评论)可能会有所帮助
  • 我现在在看那里,就像我的组合框输入只是没有焦点
  • 你能发个小提琴吗?

标签: javascript jquery integration-testing jquery-autocomplete


【解决方案1】:

我不是 100% 确定,但我认为浏览器禁止这样做。您的请求可能会被证明是不可能的。

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

对此感到抱歉。也许您可以只循环遍历您想要测试的输入值并调用$('#medID').val(testValueHere) 而不是?

【讨论】:

    【解决方案2】:

    jQuery UI 团队为他们自己的unit tests for autocomplete 做了类似的事情。详情请见this answer

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-03-16
      • 1970-01-01
      • 2019-08-02
      • 1970-01-01
      • 2020-09-04
      • 2011-12-05
      • 2014-11-19
      相关资源
      最近更新 更多