Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery UI autocomplete仅给出一次建议_Jquery_Jquery Ui_Jquery Plugins_Jquery Autocomplete - Fatal编程技术网

Jquery UI autocomplete仅给出一次建议

Jquery UI autocomplete仅给出一次建议,jquery,jquery-ui,jquery-plugins,jquery-autocomplete,Jquery,Jquery Ui,Jquery Plugins,Jquery Autocomplete,我在标记文本框中使用jquery ui autocomplete,它工作正常,但问题是它只给出一次建议,例如,第一次输入字符时,它显示建议,我从建议中选择一些内容,并在文本框中添加逗号,但当我再次输入字符时,它不显示任何内容 我的代码如下 JQUERY function split(val) { return val.split(/,\s*/); } function extractLast(term) { return split(term).

我在标记文本框中使用jquery ui autocomplete,它工作正常,但问题是它只给出一次建议,例如,第一次输入字符时,它显示建议,我从建议中选择一些内容,并在文本框中添加逗号,但当我再次输入字符时,它不显示任何内容

我的代码如下

JQUERY

 function split(val) {
        return val.split(/,\s*/);
    }
    function extractLast(term) {
        return split(term).pop();
    }

    $("#tagsss")
    // don't navigate away from the field on tab when selecting an item
        .bind("keydown", function (event) {
            if (event.keyCode === $.ui.keyCode.TAB &&
                    $(this).data("autocomplete").menu.active) {
                event.preventDefault();
            }
        })
        .autocomplete({
            minLength: 0,
            source: function (request, response) {
                $.ajax({
                    url: "/Home/LookUpTag",
                    dataType: "json",
                    data: "searchterm=" + request.term,
                    success: function (data) {
                        response($.map(data, function (item) {
                            //  alert(data.length);
                            return {
                                label: item.Name,
                                value: item.Name,
                                Name: item.Name
                            };
                        }));
                    }
                });
            },
            focus: function () {
                // prevent value inserted on focus
                return false;
            },
            select: function (event, ui) {
                var terms = split(this.value);
                // remove the current input
                terms.pop();
                // add the selected item
                terms.push(ui.item.value);
                // add placeholder to get the comma-and-space at the end
                terms.push("");
                this.value = terms.join(",");
                return false;
            }
        });
我在控制器中的功能

控制器

public JsonResult LookUpTag(string searchterm)
    {

        var tags = context.tagService.Query().Where(x => x.name.Contains(searchterm)).Select(x => x.name).ToList();
        var list = tags.Select(item => new SearchJsonModel
        {
            Name = item,
            Value = item
        }).Select(model => (model)).ToList();
        return Json(list, JsonRequestBehavior.AllowGet);
    }

我做了很多工作,但没有发现任何错误,请告诉我这个代码有什么问题。提前感谢

不确定,但是您是否错过了调用
extractLast()
来检索输入中的最后一个术语

源参数

source: function (request, response) {
                $.ajax({
                    url: "/echo/json/",
                    dataType: "json",
                    data: "searchterm=" + extractLast(request.term),
                    success: function (data) {
                        response($.map(data, function (item) {
                            //  alert(data.length);
                            return {
                                label: item.Name,
                                value: item.Name,
                                Name: item.Name
                            };
                        }));
                    }
                });
            }

绑定键控和自动完成。。。。。。。。。。。。。。。。。。问题是

.bind("keydown", function (event) {

$('########').live("keydown.autocomplete", function() {
$inputbox = $(this);
$inputbox.autocomplete({
source: function(req, add){
$.ajax({
type: "POST",
url: #########################,
dataType: "json",
data: { place_of_loading_code: $inputbox.val() }
}).done(function( msg ) {
resultArr = eval(msg);
add(resultArr);
});
}
});
});

看到它能起作用我很震惊,谢谢你让我开心:-)