您好我是jquery的新手,我正在做一个发送邮件的项目。 在项目中,当我键入发件人的名字字段时,它意味着带上自动提示字段。 但问题是,我需要的是用户的ID不是名字(但我无法显示ID到常规站点用户)。 我在考虑将返回的ID存储在隐藏字段中,同时将名称存储在表中。需要一个自动建议,从数据库返回一个ID和名字
请帮我一下,我该如何解决这个问题。
问题 1.当我输入文本框时,它能够返回用户名的首字母。 2.林不知道如何让自动提示返回的ID存储到一个隐藏字段标签
您好我是jquery的新手,我正在做一个发送邮件的项目。 在项目中,当我键入发件人的名字字段时,它意味着带上自动提示字段。 但问题是,我需要的是用户的ID不是名字(但我无法显示ID到常规站点用户)。 我在考虑将返回的ID存储在隐藏字段中,同时将名称存储在表中。需要一个自动建议,从数据库返回一个ID和名字
请帮我一下,我该如何解决这个问题。
问题 1.当我输入文本框时,它能够返回用户名的首字母。 2.林不知道如何让自动提示返回的ID存储到一个隐藏字段标签
Jquery autocomplete插件会派上用场you..Have看看这个blog
jQuery的会自动提示工作。
[{"id":1, "label":"Joe"}, {"id":2,"label":"mike"}] (or you can use "value" instead of "label")
您可以订阅它具有以下特征的select事件:
function(event, ui){//ui.item.id will have the value you are looking for}
用户界面将有一个项目欢迎使用属性,因此您可以您可以从Ajax调用的形式返回数据使用ui.item.id并回收你正在寻找的id。这是一些更完整的代码。您需要替换您的网址,但是您的PHP需要搜索字词。
$("#autocomplete").autocomplete({
source: function(req, resp){
$.getJSON(){
"search.php",
{searchTerm : req.term},
function(data){
resp(data);
}
}
},
select : function(ev, ui){
alert(ui.item.id);
}
})
我不太清楚如何将3个代码块连接在一起。 – Tumi 2011-05-23 10:40:38
Hi @ Tumi你真的不需要。第三块是重要的块。你只需要确保将数据正确地发送到php。您需要确保您的php以json数据的形式返回数据(格式如上所示)。随着用户开始输入自动完成,源代码方法将被调用。您使用req变量来获取用户输入的“term”。然后,您可以对您的页面进行ajax调用。 resp变量是一个回调。你简单的必须“回调”并传递结果(在我的函数中我称之为数据)。选择是在用户选择它时调用的。 – 2011-05-23 12:41:22