【问题标题】:Why is the jQuery blur not working jQuery's tag-it library?为什么 jQuery blur 不工作 jQuery 的 tag-it 库?
【发布时间】:2019-10-08 15:57:24
【问题描述】:

我正在尝试将 JQuery 的 blur 与 tag-it 库一起使用,但是它不起作用。

我不确定为什么模糊不起作用。

我点击输入,没有任何反应,我没有收到错误。

未出现模糊中的警报。

我尝试过使用:

.on(blur, handler) 

还有:

$(document).ready(function(){
    ("#id").blur()
})

他们都没有工作。

这是我的代码:

var id_name = [[],[]];
var selected = true;
$("#Approversdisp").tagit({
    allowSpaces: true,
    autocomplete:{
        minLength: 3,
        delay: 600,
        source: function(request, response){
            $("#divreviewersearch").show();
            $.ajax({
                "url" :"private",
                "type" : "GET",
                "data" : {"name": request.term.trim()},
                "contentType" : "application/json",
                "success" : function(data) {
                    id_name[0] = data[0];
                    id_name[1] = data[1];
                    response(data[0]);
                    $("#divreviewersearch").hide();
                },
                "error" : function(error)
                {
                    alert("error: "+JSON.stringify("There was an error!"));
                }
            });
        },
        select: function(event, ui) {
            selected = false;
            var nameid = ui.item.value;
            var approvers = document.addcontent' . $item_id .'.Approvers.value;
            ui.item.label = ui.item.label.replace(/\((.*?)\)/, "");
            ui.item.value = ui.item.value.replace(/\((.*?)\)/, "");
            document.addcontent' . $item_id .'.Approvers.value = approvers+"|"+id_name[1][id_name[0].indexOf(nameid)];
        },
    }
});
$("#Approversdisp").blur(function() {
    alert("in blur");
    if(selected){
        var input = $("#Approversdisp").val();
        input = input.split(",");
        $("#Approversdisp").tagit("removeTagByLabel", input[input.length-1]);
        alert("please pick the tag from the list.");
    }
    selected = true;

});

预期的结果是模糊效果。

【问题讨论】:

  • 能否请您解决第二个 sn-p 中的拼写错误?
  • 另外,我不熟悉“tag-it”,但一些 UI 插件通过将原生元素替换为它们自己的元素来发挥作用,这些元素能够提供所需的样式。您是否验证了在与使用 tag-it 初始化的元素交互时,“#Approversdisp”实际上获得了焦点,而不是插件中其他一些动态生成的元素?

标签: javascript jquery tag-it


【解决方案1】:

我想出了你必须使用的答案

$("#inputid").data("ui-tagit").tagInput.blur()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多