这个 JavaScript 响应函数有什么作用?
我在另一篇SO帖子中看到了这段代码: jQuery UI Autocomplete with ASP MVC
$("#CustomerID").autocomplete({
source: function(request, response) {
$.ajax({
type: "POST",
url: "/customer/search",
dataType: "json",
data: {
term: request.term
},
error: function(xhr, textStatus, errorThrown) {
alert('Error: ' + xhr.responseText);
},
success: function(data) {
response($.map(data, function(c) {
return {
label: c.Company,
value: c.ID
}
}));
}
});
},
minLength: 2,
select: function(event, ui) {
alert('Select');
}
});
我了解除了成功函数之外的所有内容。我知道 map 正在获取一个数组并将每个值映射到一个具有 label 和 value 属性的新对象并返回新数组,但我不确定 response() 的作用。
I saw this code in another SO post: jQuery UI Autocomplete with ASP MVC
$("#CustomerID").autocomplete({
source: function(request, response) {
$.ajax({
type: "POST",
url: "/customer/search",
dataType: "json",
data: {
term: request.term
},
error: function(xhr, textStatus, errorThrown) {
alert('Error: ' + xhr.responseText);
},
success: function(data) {
response($.map(data, function(c) {
return {
label: c.Company,
value: c.ID
}
}));
}
});
},
minLength: 2,
select: function(event, ui) {
alert('Select');
}
});
I understand everything except the success function. I know that map is taking an array and mapping each value to a new object that has a label and value property and returning the new array, but I am not sure what response() does.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
这个名为response的对象是一个回调函数,通过自动完成方法传递给标记为source的函数。
请参阅 Jquery UI 自动完成
This object called response is a call back function passed to the function labeled source by the autocomplete method.
see Jquery UI Autocompleate
它似乎是原始编码器的代码具有的自定义函数。据我所知,这不是一个固有的 jQuery 函数。
It appears to be a custom function that the original coder's code has. To the best of my knowledge this is not an inherent jQuery function.