【发布时间】:2011-04-27 07:54:39
【问题描述】:
我尝试使用 autocomplete jquery-ui 脚本,但从文档中解释远程源必须返回 json 数据,它不是在谈论 纯文本响应, 我在 jsp/servlet 中开发我的应用程序,但我不知道如何创建 json 数据。
所以我发现了另一个 jquery 自动完成插件 --> autocomplete feature with java
本教程和脚本运行良好,但脚本没有我需要的相同选项。 我尝试保持相同的 getdata.jsp 和 servlet 页面以适应 jquery-ui-autocomplete 只是更改脚本的链接,firebug 告诉我 正确的响应请求,但未显示!
JavaScript 调用:
<script>
$(function() {
$( "#responsable" ).autocomplete({
source: "getdata.jsp",
minLength: 2
});
});
</script>
这里是 getdata.jsp 文件:
<%@page import="java.util.Iterator"%>
<%@page import="java.util.List"%>
<%@page import="fr.myldap.model.*"%>
<%
PersonneDB db = new PersonneDB();
String query = request.getParameter("term");
List<Personne> personnes = db.getData(query);
Iterator<Personne> iterator = personnes.iterator();
while(iterator.hasNext()) {
String personne = (String)iterator.next().getNomComplet();
out.println(personne);
}
%>
这是 PersonneDB 类,它返回人员列表
package fr.myldap.model;
import java.util.ArrayList;
import java.util.List;
public class PersonneDB {
private LDAPInterneDao piDao;
private LDAPExterneDao peDao;
public PersonneDB() {
ContextVar var= new ContextVar();
piDao = var.getPiDao();
peDao = var.getPeDao();
}
public List<Personne> getData(String query) {
List<Personne> matched = new ArrayList<Personne>(piDao.findByName(query));
matched.addAll(peDao.findByName(query));
return matched;
}
}
希望有人能帮帮我
【问题讨论】:
标签: java jquery firebug jquery-autocomplete jquery-ui-autocomplete