有没有办法将twitter bootstrap的typeahead函数转换为$(“body”)。on()函数?如果页面加载中存在该元素,则以下代码可以正常工作。
$("#job_title").typeahead({
source: searchFunction,
onselect: function(obj) {
}
});
但如果我动态添加id =“job_title”的文本输入,则上述功能不起作用。有解决方法吗?
答案 0 :(得分:3)
此解决方案不需要额外的javascript。来自https://stackoverflow.com/a/15094730
$("#element-that-will-contain-typeaheads").on("DOMNodeInserted", function () {
$(this).find(".typeahead").typeahead();
});
答案 1 :(得分:1)
我下载jquery.livequery.js以获得我想要的行为:
$("#job_title").livequery("create", function() {
$(this).typeahead({
source: searchFunction,
onselect: function(obj) {
}
});
});
答案 2 :(得分:0)
var fx = {
"init":function() {
$("#id_of_an_element").typeahead({
minLength:2,
delay:1 ...
})
},
"method2":function(){
some content;
}
}
每次将包含typeahead的元素加载到DOM中(例如,通过AJAX成功,调用fx.init();