JQuery的Autocomplete,使用SSM框架时,前台报错

xiaozhu890505 2017-09-13 11:56:15
后台代码:
public String search(HttpServletRequest req){
String custName=req.getParameter("custName");
if (custName!=null&&!"".equals(custName)) {
try {
custName=java.net.URLDecoder.decode(custName, "utf-8");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
}
JSONArray jsonArray=null;
List<Object>custList=custbiz.searchCustByName(custName);
if (custList!=null&&custList.size()>0) {
jsonArray=new JSONArray();
for (int i = 0; i < custList.size(); i++) {
Map<String,Object> map=(HashMap) custList.get(i);
jsonArray.put(map);
}
}
return jsonArray.toString();
}
前台JS:
var names ; //定义数据
//开始函数
$(document).ready(function(){
$.ajax({
type:'POST',
contentType: "application/json",
url: "test.action",
dataType: "json",
success:function(data){
names = data;
alert(data);
autocompleteFn(data);
}
});
});
//自动 补全方法
function autocompleteFn(names){
$("#autocomplete").autocomplete(names,{
minChars:1,
max: 10,
dataType:"json",
autoFill: true,
mustMatch: true,
matchContains: true,
scrollHeight: 220,
formatItem: function(data, i, total) {
return "<I>"+data.custName+"</I>";
},
formatMatch: function(data, i, total) {
return data.custName;
},
formatResult: function(data) {
return data.custName;
}
});
}

错误信息:
Uncaught Error: cannot call methods on autocomplete prior to initialization; attempted to call method '[{"custName":"测试1"},{"custName":"测试2"},{"custName":"测试3"},……
at Function.error (http://localhost:8080/wemaker/js/jquery-1.8.3.min.js:2:13215)
at HTMLInputElement.<anonymous> (http://localhost:8080/wemaker/js/jqueryui/jquery-ui.js:521:15)
at Function.each (http://localhost:8080/wemaker/js/jquery-1.8.3.min.js:2:14543)
at init.each (http://localhost:8080/wemaker/js/jquery-1.8.3.min.js:2:11217)
at init.$.fn.(anonymous function) [as autocomplete] (http://localhost:8080/wemaker/js/jqueryui/jquery-ui.js:517:9)
at autocompleteFn (http://localhost:8080/wemaker/test.jsp:31:29)
at Object.success (http://localhost:8080/wemaker/test.jsp:25:13)
at l (http://localhost:8080/wemaker/js/jquery-1.8.3.min.js:2:16996)
at Object.fireWith [as resolveWith] (http://localhost:8080/wemaker/js/jquery-1.8.3.min.js:2:17783)
at T (http://localhost:8080/wemaker/js/jquery-1.8.3.min.js:2:80993)
...全文
157 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

81,095

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧