【发布时间】:2016-09-13 03:44:41
【问题描述】:
我有一个带有 jQuery“自动完成”的 AJAX 请求,如下面的代码:
var clientesList = [];
$("#clientes").autocomplete({
source: function (request, callback) {
$.ajax({
type: "POST",
url: "../../../Cliente/GetClientesByName",
data: "{'nome':'" + request.term + "'}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (data) {
debugger;
callback($.map(data.cities, function (obj) {
return obj.Main
}))
}
})
}
})
触发事件时,jquery.min中显示错误??
"Create:2 Uncaught SyntaxError: Unexpected token
我的输入 HTML 是这样的:
<input type="text" id="clientes" class="form-control col-md-10" />
【问题讨论】:
-
您的远程服务可能返回 HTML 而不是 JSON。此外,您的
data不是有效的 JSON。试试data: JSON.stringify({nome: request.term})。两者可能相关(错误数据 -> HTML 错误响应) -
扩展@Phil 的评论,只有引号是 JSON 中的有效字符串分隔符,而不是撇号。 JSON 可能看起来像 Javascript,但实际上不是。
-
我打赌您的请求被重定向是因为您已注销、错误处理程序已启动或 404,而
<来自您实际上正在提供 HTML 文档。
标签: jquery ajax jquery-ui-autocomplete