我正在尝试使用AJAX来加载一些输入&选择稍后在页面上显示的。我正在做这样的事情。
<input type='product' alt='2'/>
$("input[type='product']").on("focusin", function(){
var product_type_ids = $(this).attr('alt');
$(this).autocomplete({
// ajax load the information here
});
});
<select type='product' alt='2'/>
$("select[type='product']").on("focusin", function(){
var product_type_ids = $(this).attr('alt');
// some codes here
});
对于从页面呈现开始就存在的选择和输入,结果是可以的,但对于稍后出现的元素则不可以。有人知道这里发生了什么吗?谢谢
这是事件委派。更改选择器。
$("body").on("focusin", "input[type='product']", function(){
$("body").on("focusin", "select[type='product']", function(){
这将允许元素的事件传播到静态父级,例如本例中的"body"。这也适用于未来的所有元素。