JQuery-ui-autocomplete在文本框中显示值

时间:2016-05-04 18:11:03

标签: javascript jquery ajax jquery-ui autocomplete

我正在使用jquery-ui-1.11.4和自动完成。我的源代码是由ajax获得的,它正确地返回了这种类型的JSON

[
  {"label":"foo", "value":"01-1013"},
  {"label":"bar", "value":"01-1003"}
]

当我向下滚动以选择我的选择时,一切正常。该值将添加到printTag,标签将添加到文本框(inputTag)。问题是,当我使用向下箭头选择我的选择时,值显示在文本框中,而不是标签。在我选择我的选择后,标签仅显示在。

我阅读了几篇评论,并试图修改我的代码,但我无法弄清楚。这是我的自动填充功能。

$(inputTag).autocomplete({
    source: function(request, response) {
        $.ajax({
            url: myAjaxFile,
            method: "GET",
            dataType: "JSON",
            data: getData+'='+ request.term,
            success: function(data){
                response(data)
            }
        });
    },
    focus: function(event, ui){
        event.preventDefault();
        $(inputTag).val(ui.item.label);
        return false;
    },
    select: function(event, ui) {
        $(printTag).val(ui.item.value);
        // prevent autocomplete from updating the textbox
        event.preventDefault();
        $(inputTag).val(ui.item.label);
        return false;
    },
    minLength: 2
});

如何在文本框中显示标签而不是值?

0 个答案:

没有答案