使用自动填充jquery工具时出现问题
客户方:
JQElement.autocomplete({
source: function (request, response) {
$.ajax({
url: jsonAction,
dataType: "json",
data: {
maxRows: 10,
startsWith: request.term
},
success: function( data ) {
response( $.map( data , function( item ) {
return {
label: item.label,
value: item.value
}
}));
//response(data);
},
error: function(message, status, errorThrown) {
alert("une erreur s'est produit lors de la recherche des éléments correspondant à la saisie. Contacter les créateurs du programme");
}
});
},
minLength: 1
});
该行动被称为:
public String getInsuredNumbers() {
try {
String maxRows = request.getParameter("maxRows");
String startsWith = request.getParameter("startsWith");
if(maxRows.equals("")) maxRows = "10";
if(startsWith.equals("")) startsWith = "17";
String sql = "select assure.ASS_nni, assure.ASS_nom, assure.ASS_prenom from assure where "
+ "assure.ASS_nni like '" + startsWith + "%' limit " + maxRows;
ResultSet rs = this.getResponse(sql);
while(rs.next()) {
Param p = new Param(rs.getString(1), rs.getString(1) + " " + rs.getString(2) + " " + rs.getString(3));
data.add(p);
}
} catch (SQLException ex) {
Logger.getLogger(AutocompleteAction.class.getName()).log(Level.SEVERE, null, ex);
} finally {
return SUCCESS;
}
}
public List<Param> getData() {
return data;
}
data是Param的ArrayList
public class Param {
private String value;
private String label;
public Param(String value, String label) {
this.value = value;
this.label = label;
}
public String getLabel() {
return label;
}
public String getValue() {
return value;
}
}
Firebug bug告诉我json答案很好 成功答案在客户端触发
但是输入下的列表似乎是空的
你可以帮忙吗?
谢谢
答案 0 :(得分:0)
解决方案
在客户端:
JQElement.autocomplete({
source: function (request, response) {
$.ajax({
url: jsonAction,
dataType: "json",
data: {
maxRows: 10,
startsWith: request.term
},
success: function( data ) {
var mydata;
$.map(data, function(item, i) {
if(i == "data") {
mydata = item;
}
});
response( $.map( mydata , function( item) {
return {
label: item.label,
value: item.value
}
}));
},
error: function(message, status, errorThrown) {
alert("une erreur s'est produit lors de la recherche des éléments correspondant à la saisie. Contacter les créateurs du programme");
}
});
},
minLength: 1,