在jquery中自动完成

时间:2009-10-15 11:27:29

标签: jquery asp.net-mvc autocomplete

我在jquery中使用自动完成功能来显示用户列表intellisense。

对于formatItem,我正在使用FirstName + " " + LastName + " [" + EmailAddress + "]"; 对于formatResult,我显示FirstName + " " + LastName

我需要获取所选用户的用户ID,我如何获得自动完成功能?

说,我有一个文本框,用于输入具有自动填充功能的用户名。并在文本框附近添加一个按钮,将输入的用户的用户ID添加到数据库中。我需要在文本框中只显示FirstName + " " + LastName,在保存时我需要使用userid。

我在哪里可以存储在文本框中输入的用户的用户ID?

2 个答案:

答案 0 :(得分:1)

这是当前项目的实际代码

    $("#venue_name").autocomplete(self._venueAutoCompleteUrl, {
        multiple: false,
        autoFill: true,
        scroll: true,
        parse: function(data) {
            return $.map(eval(data), function(row) {
                return { data: row, value: row.Name, Id: row.Id, result: row.Name }
            });
        },
        formatItem: function(item) {
            return "<strong>" + item.Name + "</strong><br/>" + item.Address;
        },
        formatResult: function(row) { return row.Id; }
    }).result(function(e, item) {
        $("#selected_venue_address").show();
        $("#selected_venue_address").html("<small>" + item.Address + "</small><br/>");
        $("#Event_Venue").val(item.Id);
    });

注意最后一部分(.result(function(e,item){})

最后一部分将场地ID设置为隐藏字段Event_Venue

答案 1 :(得分:0)

你可以拥有一个隐藏的领域。当用户选择该值时,您可以获取用户ID并将其放入隐藏字段。在按钮的单击上,使用文本框传递隐藏字段的值。