猿问

如何对动态生成的input使用autocomplete?

如果要对动态生成的input绑定原始事件的话,我知道语法是


$(parentElement).on("click",childrenElement,function(){

//do something here

});

非动态生成的input的zutocomplete代码如下:


$("#initial-input").autocomplete({

    source: authors,

    // autoFocus: true,

    focus: function(event, ui) {

      $("#initial-input").val(ui.item.label);

      return false;

    },

    select: function(event, ui) {

      $("#initial-input").blur();

      return false;

    },

    //close要放在最后

    close: function(event, ui) {

      $("#initial-input").val("");

    }

});

请问该如何对动态生成的input调用autocomplete?请各位老师不吝赐教。。。。


紫衣仙女
浏览 573回答 1
1回答

缥缈止盈

使用是jquery-ui?不是动态生成的input你使用了$('#initial-input'),而且还用了好几个,首先这不提倡(题外话)。动态生成的input,你在生成的时候,会有一个input实例。生成input之后,如果自动填充的内容不一样的话,可以把你上面$('#initial-input')换成$(inputElem)即可。如果生成的input和之前多个input自动填充的source一样,建议给一个class,直接使用class填充,这样可以直接控制多个input的自动填充(前提是自动填充的source一样)代码如下:(一个简单地示例代码)<body></body><script>&nbsp; &nbsp; var authors = [&nbsp; &nbsp; &nbsp; &nbsp; 'name',&nbsp; &nbsp; &nbsp; &nbsp; 'name',&nbsp; &nbsp; &nbsp; &nbsp; 'name',&nbsp; &nbsp; &nbsp; &nbsp; 'name',&nbsp; &nbsp; &nbsp; &nbsp; 'name',&nbsp; &nbsp; &nbsp; &nbsp; 'name',&nbsp; &nbsp; ];&nbsp; &nbsp; var inputElem = document.createElement("input");&nbsp; &nbsp; document.body.appendChild(inputElem);&nbsp; &nbsp; $(inputElem).autocomplete({&nbsp; &nbsp; &nbsp; &nbsp; source: authors&nbsp; &nbsp; });</script>
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答