有没有办法在没有JQuery UI的情况下使用自动完成功能

时间:2012-03-30 12:07:26

标签: jquery autocomplete

有没有办法在没有JQuery UI的情况下使用自动完成功能导致JQuery UI的占用空间过大(包括其CSS)?

或者是否有任何替代插件或其他东西,我搜索了很多但没有找到任何插件。

4 个答案:

答案 0 :(得分:3)

你可以构建自己的,不依赖于JQuery UI,它是一个非常简单的触发字段onchange()的概念,发出一个AJAX调用来获得与你目前输入的内容相匹配的结果,并用div填充一些字段或者在它下方或附近下降。在选择div或下拉列表时,可以使用选定的值填充触发器字段。

我知道Jquery Autosuggest不使用JQuery UI,但确实需要JQuery。

答案 1 :(得分:1)

刚刚发现这个facebook风格的jQuery插件目前正在维护,不需要大量的jQuery UI

https://github.com/loopj/jquery-tokeninput

答案 2 :(得分:1)

在不使用jQuery的情况下,请参阅以下代码段以获取自动完成功能。这是简单的html5,datalist标签适用于所有现代浏览器。

<!DOCTYPE html>
<html>
<head>
<!--your stuff-->
</head>
<body>
<!--your stuff-->
<input type="text" id="txtAutoComplete" list="languageList"/><!--your input textbox-->
<datalist id="languageList">
<option value="HTML" />
<option value="CSS" />
<option value="JavaScript" />
<option value="SQL" />
<option value="PHP" />
<option value="jQuery" />
<option value="Bootstrap" />
<option value="Angular" />
<option value="ASP.NET" />
<option value="XML" />
</datalist>
</body>
</html>

如果需要与实施相关的帮助,请参阅此link

答案 3 :(得分:0)

无需包含JQuery或任何其他第三方库。

IP_autoComplete函数会自动将字段值合并到URL(第一个参数)。例如,文本框的值为neeraj,然后会触发arrjson.php?Name=neeraj

您也可以将IP_autocomplete函数用于静态值。只需在字符串开头添加#符号一次(逗号拼写)。例如:“#val1,val2,val3”

arrjson.php应该返回json编码的字符串。

HTML:

<script type="text/javascript" src="http://services.iperfect.net/js/IP_generalLib.js">

身体

<input type="text" name="testautocomplete" id="testautocomplete" onkeypress="IP_autoComplete('arrjson.php?Name=',this.id,event)">

或者只是你可以给静电:

<input type="text" name="testneeraj" id="testneeraj" onkeyup="IP_autoComplete('#sachin bhalake,ishwar agam,mohsin khan,neeraj dhekale,sheetal dhekale,ajay bhalake',this.id,event)">