我有一个以类名作为子类创建的动态输入字段。
按键时,自动完成功能运行良好,我可以从中选择一个。

工作代码如下

$("body").on('keypress', 'input.sub-category', function () {
        var availableTags = [
            {label:"ActionScript", value:"1"},
            {label:"ActionScript1", value:"11"},
            {label:"ActionScript2", value:"12"},
            {label:"ActionScript3", value:"13"},
            {label:"ActionScript4", value:"14"},
        ];
        $(this).autocomplete({
            source: availableTags,
        });
    });


当我选择一种自动建议的文字说'ActionScript'时,以下代码中将提供值(1),我如何访问它?选择警报功能可以正常工作,因此只需要知道如何访问所选标签的值即可。

$("body").on('autocompleteselect', 'input.sub-category', function () {
        alert('here');
});


除此之外,我想知道如何在输入框中设置所选文本,而不是其值。

最佳答案

您需要包括jquery-ui文件
文件中的“ https://code.jquery.com/ui/1.12.0/jquery-ui.js

只需更换

 $("body").on('autocompleteselect', 'input.sub-category', function () {
        alert('here');
});


与以下几行。

$("body").on('autocompleteselect', 'input.sub-category', function (event,ui)     {
    alert(ui.item.label);
    alert(ui.item.value);

});




$(this).autocomplete({
        source: availableTags,
    });




$(this).autocomplete({
        source: availableTags,
        select:function(event,ui){
           $(".sub-category").val(ui.item.label);return false;
        }
    });


这将可以正常工作以获取更多信息,请继续以下链接

http://api.jqueryui.com/autocomplete/

10-05 20:52
查看更多