这是解析返回到 ajax 自动完成调用的地图 json 的正确方法吗?我期待 jQuery 理解 json 响应,并且不需要在脚本中进行任何额外的工作来列出自动完成项目。
json -
[{"issue":"Item returned"}]
JS-
$("#term").autocomplete({
source: function(request, response){
$.ajax({
url: '/issue/issue_type',
type: 'POST',
dataType: 'json',
data: { issue_code : $("#term").val() },
headers: { 'X-CSRF-Token': '<%= form_authenticity_token.to_s %>' },
success: function(data) { response($.map(data.issue, function(issue){
return {
value: data.issue
}
} )); }
});
},
minLength: 2,
select: function(event, ui){
//
}
});
});
试过了success: function(data) { response(data); }
。也没有用。
控制器 -
def issue_type
@c = Codes.select("issue").where("codes.issue LIKE :i",{:i => "#{params[:posted_code]}%"})
puts @c.to_json
respond_to do |format|
format.json { render :json=> @c.to_json }
format.js
end
return @c.to_json
end