Jquery自动完成,在新文本上设置id 0

时间:2012-11-28 08:06:49

标签: jquery jquery-autocomplete jquery-ui-autocomplete

以下代码填写了我的文本框的自动填充功能。

$.ajax({
                type: "POST",
                url: "MyService.asmx/GetCompanies",
                dataType: "json",
                data: "{}",
                contentType: "application/json; charset=utf-8",
                success: function (data) {
                    $('#txtCompany').autocomplete({
                        minLength: 0,
                        source: data.d,
                        focus: function (event, ui) {
                            $('#txtCompany').val(ui.item.value);
                            return false;
                        },
                        select: function (event, ui) {
                            $('#txtCompany').val(ui.item.value);

                            $('#HFCompId').val(ui.item.Name);
                            return false;
                        }
                    });
                },
                error: function (XMLHttpRequest, textStatus, errorThrown) {
                    alert(textStatus);
                }
            });

当用户选择名称时,名称的ID将复制到HFCompID,并且可以很好地完成。 但我还需要通过不在自动完成中的同一文本框添加新名称。在用户使用新名称的情况下,我需要将HFCompID的值设置为0。

我怎样才能做到这一点?

1 个答案:

答案 0 :(得分:0)

其实我自己弄清楚了:) 希望它是正确的方法。现在它的工作。 在select事件

之后添加了此内容
change: function (event, ui) {
                            if (ui.item == null) {
                                $('#HFCompId').val(0);
                            }
                        }