验证 – 验证jquery自动完成

前端之家收集整理的这篇文章主要介绍了验证 – 验证jquery自动完成前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个带有远程数据源的文本框,用于自动完成( jquery)[不是插件,jquery ui demos显示的原始插件]
如何确保用户只输入自动填充建议中的内容而不是他自己的内容

解决方法

问题是缺乏具体细节,但我认为你的意思是在客户端进行验证,因为你明确提到了auto complete插件.这个答案将分为两部分.第一个是原始答案,假设一个自动完成插件.第二个是根据问题的更新进行修订.

1)使用http://docs.jquery.com/Plugins/Autocomplete

对此最好的解决方案是“mustMatch”选项.这是API documentation.

If set to true,the autocompleter will only allow results that are presented by the backend. Note that illegal values result in an empty input Box.

您应该能够以这种方式使用它:

$("selector").autocomplete("url",{"mustMatch": true});

您还可以在“result”事件中以某种方式验证用户输入.这是一个链接http://docs.jquery.com/Plugins/Autocomplete/result.

2)使用http://jqueryui.com/demos/autocomplete

这里没有mustMatch选项.您可以扩展插件,或者您可以添加类似于我为其他自动完成插件提到的内容.使用“change”事件.

$( ".selector" ).autocomplete({
   change: function(event,ui) { ... }
});

如果您使用数组作为数据源,这将更有效.由于您使用的是远程数据源,因此需要使用ui.item进行另一个最终查询以验证用户值.然后,您可以允许或拒绝默认行为.

在任何一种情况下,仍应在服务器端以某种方式验证输入.这超出了jQuery插件的范围.

猜你在找的jQuery相关文章