jQuery TextExt - 指定URL的Ajax自动完成问题

时间:2013-03-20 06:17:13

标签: javascript jquery ajax jquery-autocomplete jquery-textext

我正在使用autocomplete $('#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 } }); ,我使用它的示例json url(data.json)没有问题。但是当我使用自己的网址时,就像下面这样:

{{1}}

它不起作用!!

从此url返回的数据不会预先填充,即它会根据id和scopeType填充数据并返回正确的JSON格式。 (当我在浏览器上单独尝试并运行时,我可以在屏幕上看到正确的结果。)

在此示例中是否应始终预先填充JSON数据?

我没有使用自动填充的经验,所以请在这里帮助我,或者如果有更好的方法可以做到这一点,如果你能分享的话会很棒。

2 个答案:

答案 0 :(得分:0)

尝试取出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'
            }
        }
    })
;

还要确保您的网址使用Chrome中的网络面板(响应标签)返回数据。 https://developers.google.com/chrome-developer-tools/docs/network

答案 1 :(得分:0)

我认为你犯了一些愚蠢的错误,包括像miss插件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>

然后尝试如上