选择onfocusin做某事不起作用

时间:2014-11-03 03:20:00

标签: jquery select delegates focusin

我正在尝试使用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
});

对于从页面渲染开始时存在的选择和输入,但是对于稍后出现的元素,结果是正常的。有谁知道这里发生了什么?谢谢!

1 个答案:

答案 0 :(得分:1)

它的事件授权。改变选择器。

$("body").on("focusin", "input[type='product']", function(){

$("body").on("focusin", "select[type='product']", function(){

这将允许元素事件传播到静态父级,例如&#39; body&#39;在这种情况下。这也适用于所有未来的元素。