0

我有用于自动完成的 mockjax,它工作得很好。我对 mockjax 没有任何问题,也不想更改它。

这是它的代码

   $.mockjax({
    url: '*',
    responseTime: 2000,
    response: function (settings) {
        var query = settings.data.query,
            queryLowerCase = query.toLowerCase(),
            re = new RegExp('\\b' + $.Autocomplete.utils.escapeRegExChars(queryLowerCase), 'gi'),
            suggestions = $.grep(countriesArray, function (country) {
                 // return country.value.toLowerCase().indexOf(queryLowerCase) === 0;
                return re.test(country.value);
            }),
            response = {
                query: query,
                suggestions: suggestions
            };

        this.responseText = JSON.stringify(response);
    }
});

现在在同一页面上我必须使用 jquery post 这给了我错误

$.post("save.php", { id:id }, function(data) {
alert(data);
});

它让我出错“查询未定义”

请教我如何在一个页面上同时使用它们而不打扰其他页面?

4

1 回答 1

1

您传递给的对象jQuery.post没有query键,但您试图在 mockjax 响应函数的第一行中引用它:settings.data.query

Mockjax 只是将您尝试使用 jQuery 发布的任何数据传递给您指定的回调。

在一个简单的示例中查看此功能的工作原理:http: //jsfiddle.net/gabor_nagy/N4x2Z/

于 2014-07-11T15:33:55.800 回答