我的jQuery自动完成功能在jQuery版本1.9上工作正常,但是当我使用jQuery v1.8.3时,它向我显示错误:
TypeError: $(...).autocomplete is not a function
由于其他功能也会干扰,我无法将我的jQuery版本从v1.8.3更改为1.9。如何在此 jQuery v1.8.3 版本中使用 jQuery 自动完成功能?我正在谈论这个自动完成。
这是我的代码:
<script src="<?php bloginfo('template_url');?>/library/js/jquery_1.9.js"></script>
<script src="<?php bloginfo('template_url');?>/js/UI/ui/jquery-ui.js"></script>
<link rel="stylesheet" href="<?php bloginfo('template_url');?>/js/UI/themes/base/jquery-ui.css">
function autoComplete(obj)
{
var term_val = obj.value
var findin = "";
if(term_val == "")
{
console.log(term_val);
$("#"+obj.id).val("");
$("#ui-id-1").remove();
}
else
{
$.ajax({
type:"POST",
url:"<?php echo bloginfo('template_url')?>/ajax.php", data:"&term_val=" + term_val,
dataType:"json",
success:function (data) {
var availableTags = data;
$( "#"+obj.id ).autocomplete({
minLength: 0,
source: availableTags
});
}
});
}
}
<input type="text" name = "quick_search_new" id="quick_search_new" onkeyup="autoComplete(this)" autocomplete="off"/>
当我在 1.8 版本中使用上面的 jQuery 文件时,它不起作用,显示错误:
<script src="<?php bloginfo('template_url');?>/library/js/jquery_1.8.js"></script>
<script src="<?php bloginfo('template_url');?>/js/UI/ui/jquery-ui.js"></script>
<link rel="stylesheet" href="<?php bloginfo('template_url');?>/js/UI/themes/base/jquery-ui.css">
我通过将我的Jquery UI版本从jQuery UI - v1.10更改为jQuery UI - v1.8.24来解决我的问题。而且它工作正常。谢谢大家
<script src="<?php bloginfo('template_url');?>/js/UI/ui/jquery-ui.js"></script> <!-- Version v1.10 -->
替换为
<script src="<?php bloginfo('template_url');?>/js/UI/ui/jquery-ui.js"></script> <!-- Version v1.8.24 -->
现在它工作正常。