如何绑定自动完成动态创建的文本输入(How to bind autocomplete to dyna

2019-10-22 21:56发布

我想我的自动完成绑定到我点击一个按钮动态创建的输入,我似乎无法得到它的工作。 当与addincidentwitness类的一个按钮被点击,没有问题,但在输入文本字段不做查找字段创建。 下面是代码。 首先是按钮。

<input type="button" class="addincidentwitness" value="Add MCH Person"/>

下面是结合至上述按钮jquery的代码。 正如你所看到的,我创建输入文本字段和它下面是自动完成该输入字段的功能。

$(function(){
$(".addincidentwitness").click(function(){
    if($(this).val()=="Add MCH Person"){
        $("#addwitnessdiv").empty();
        $("#addwitnessdiv").append(
            $('<label>').prop({for:"addmchwitness"}).text("MCH Person to Add") 
        ).append(
            $('<input>').prop({type:"text",name:"addmchwitness",id:"addmchwitness"})
        )
        $(function(){
            $("#addmchwitness").autocomplete({
                source:"../json/getanymchpersonjson.php",
                select:function(e,u){
                    if($("#"+u.item.Mchnum).length>0){
                        alert("You already have this employee as a witness.")
                    }else{
                        $("#witnessesdiv").append(
                            $('<div>').prop({id:u.item.Mchnum}).append(
                                $('<label>').text("MCH Person")      
                            ).append(
                                $('<input>').prop({type:"hidden",name:"witnessmchnums[]",value:u.item.Mchnum})    
                            ).append(
                                $('<input>').prop({type:"text",value:u.item.label,readonly:true})  
                            )
                        )
                    }
                    $("#addwitnessdiv").empty();
                },
                minLength:3
            })

        })
    }

})
})

一定有什么毛病我怎么绑定这个到现场,但是当我检查使用Chrome输入字段,它似乎从jQuery的附加相应类领域。 下面是现场检查的输出。

<input type="text" name="addmchwitness" id="addmchwitness" class="ui-autocomplete-input" autocomplete="off">

有任何想法吗?

文章来源: How to bind autocomplete to dynamically created text input