【发布时间】:2009-07-28 03:37:24
【问题描述】:
我使用 jQuery Autocomplete 插件在搜索框中显示用户信息,但我不太明白以下解析函数的语法含义:
$("#UserSearchBox").autocomplete('FindUser.ashx',
{
minChars: 2,
width: 400,
max: 5,
parse: function(data)
{
return $.map(eval(data), function(row)
{
return {
data: row,
value: row.UserID,
result: ""
}
});
},
formatItem: function(item)
{
return FormatUser(item);
});
该插件工作正常:它从 HTTP 处理程序中检索 JSON 化的用户信息数组,并在 FormatUser 函数的帮助下显示格式化的值,但我真的很想知道以下代码的作用(我只是从样本并针对用户对象进行了调整):
return $.map(eval(data), function(row)
{
return {
data: row,
value: row.UserID,
result: ""
}
});
另外,为什么第二个 return 的左大括号必须与 return 语句在同一行?如果我将代码更改为:
return $.map(eval(data), function(row)
{
return
{
data: row,
value: row.UserID,
result: ""
}
});
我收到关于无效标签 数据 的错误。有任何想法吗?谢谢。
【问题讨论】:
标签: jquery syntax autocomplete