我使用的是autocomplete
的jQuery TextExt plugin,使用它的示例json url是data.json也没有问题。但是当我使用我自己的url时,就像下面这样:
$('#textarea').textext({
plugins : 'autocomplete filter tags ajax',
ajax : {
url :'/users/userApi.do?id=10&scopeType=all&username=user@this.com&password=pass',
dataType : 'json',
cacheResults : true
}
});
它不起作用!!
从该url返回的数据不是预先填充的,也就是说,它根据id和scopeType填充数据,并返回正确的JSON格式。(当我在浏览器上单独试用并运行时,我可以在屏幕上看到正确的结果)。
在本例中,是否应该始终预先填充JSON数据?
我没有使用自动完成的经验,所以请在这里帮助我,或者如果有更好的方法来做这件事,如果你能分享的话就太好了。
发布于 2013-03-22 01:03:33
尝试去掉cacheResults选项,并确保以JSON格式返回结果数组。cacheResults对我来说不起作用,因为我的数据是动态的。
下面是我工作的例子:
$('#marketingkeywords')
.textext({
plugins : 'autocomplete tags ajax',
ajax : {
url : '/ajax/getkeywords.php',
dataType : 'json',
cacheResults : false
},
autocomplete : {
enabled : true,
dropdown : {
position : 'above',
maxHeight : '60px'
}
}
})
;
还要确保您的URL使用类似于Chrome中的网络面板(response选项卡)返回数据。https://developers.google.com/chrome-developer-tools/docs/network
发布于 2014-12-26 19:50:26
我认为你犯了一些愚蠢的错误,在包含像这样的文件时,js试图添加插件ajax文件。
<script src="js/textext.core.js" type="text/javascript" charset="utf-8"></script>
<script src="js/textext.plugin.autocomplete.js" type="text/javascript" charset="utf-8"></script>
<script src="js/textext.plugin.suggestions.js" type="text/javascript" charset="utf-8"></script>
<script src="js/textext.plugin.ajax.js" type="text/javascript" charset="utf-8"></script>
然后尝试如上所述
https://stackoverflow.com/questions/15516592
复制相似问题