jQuery AutoComplete将返回值检索到隐藏输入

时间:2011-12-14 04:54:09

标签: jquery asp.net-mvc-3 jquery-autocomplete

我无法找到如何检索所选值的标识符(来自jQuery自动完成插件)并将其存储在隐藏输入或文本输入中。

我的代码如下:

<script type="text/javascript">
    $(function () {
        $("#person-list").autocomplete({
            source: function (request, response) {
                $.ajax({
                    url: "/person/getperson", type: "POST", dataType: "json",
                    data: { searchString: request.term, maxResults: 10 },
                    success: function (data) {
                        response($.map(data, function (item) {
                            return { label: item.FullName, value: item.FullName, id: item.Id }
                        }))
                    }
                })
            },
            select: function (event, ui) {
                alert(ui.item ? ("You picked '" + ui.item.label + "' with an ID of " + ui.item.id)
                    : "Nothing selected, input was " + this.value);
                $("#selectedid").val = ui.item.id;
                $("#selectedidhidden").val = ui.item.id;
            }
        });
    }); 
</script>

<input type="text" id="selectedid" />
<input type="hidden" id="selectedidhidden" />

我的id值显示在显示的警告中,所以我知道它正在返回OK,但它没有出现在我的文本输入(selectedid)中,我不确定如何访问它以测试它是否正在进入隐藏的输入(selectedidhidden)。我是否正确地采用这种方式?

1 个答案:

答案 0 :(得分:1)

值是一个函数

$('#selectedid').val( ui.item.id );