为什么使用JQuery自动完成功能不起作用?

时间:2018-01-16 20:13:50

标签: jquery asp.net-mvc

我希望获得id,但$("#hiddenId").val(ui.item.id);正在显示undefined。奇怪的是,我在这部分得到了valueid

 value: item.Name,
  id: item.id

我的完整JavaScript代码:

$(function () {
    $("#txtA").autocomplete({
        source: function (request, response) {
           // debugger;
            $.ajax({
                url: '/Home/Complete/',
                data: "{ 'prefix': '" + request.term + "'}",
                dataType: "json",
                type: "Post",
                contentType: "application/json; charset=utf-8",
                success: function (data) {
                    response($.map(data, function (item) {
                     // debugger;
                        return {
                            value: item.Name,
                            id: item.id
                        };
                    }))
                },
                error: function (response) {
                    alert(response.responseText);
                },
                failure: function (response) {
                    alert(response.responseText);
                }
            });
        },
        select: function (event, ui) {
             debugger;
             $("#hiddenId").val(ui.item.value);
             $("#hiddenId").val(ui.item.Id);
        },
        minLength: 1
    });
});

我的.cshtml代码:

  @Html.TextBoxFor(m => m.txtA)
  @Html.HiddenFor(m => m.hiddenId)

请指导我哪里出错了。相同的代码适用于另一个项目。我不在乎。有人请指导我。

0 个答案:

没有答案