为什么我不能在使用jqmData添加属性时触发jquery移动小部件的增强?

为什么我不能在使用jqmData添加属性时触发jquery移动小部件的增强?,jquery,events,jquery-mobile,dynamic,delegates,Jquery,Events,Jquery Mobile,Dynamic,Delegates,我正在尝试创建一个完全动态的“jquery移动”表小部件 问题是,JQM正在使用它创建不同的“表模式”: 为了防止表的自动增强,我将排除触发属性“:jqmData(role='table')”,直到我的源代码准备就绪。然后添加该属性并将其称为: // tbody target .empty() .append(allRows) // this enhances elements inside table rows .trigg

我正在尝试创建一个完全动态的“jquery移动”表小部件

问题是,JQM正在使用它创建不同的“表模式”:

为了防止表的自动增强,我将排除触发属性
“:jqmData(role='table')”
,直到我的源代码准备就绪。然后添加该属性并将其称为:

// tbody
target                   
    .empty()
    .append(allRows)
    // this enhances elements inside table rows
    .trigger("create")   
    .closest('table')
    // add triggering attribute
    .jqmData('role', 'table')
    // enhance the table (step 1 of 2)
    .table({
       create: function( event, ui ) {}
    })
这只能让我半途而废,因为现在我的表有了必要的属性
“:jqmData(role='table')”
,但我似乎无法在其上触发
tablecreate

我试过了

    .trigger('tablecreate')
    .table({
       tablecreate: function( event, ui ) {}
    })
但是它们都不做任何事情,所以我假设我的元素没有被委托事件绑定捕获(也可能是错误的)

问题
在纯jquery中,当我在时间X动态添加触发属性时,是否可以在委托处理程序中包含元素

感谢您的投入

好的。我自己发现的:

问题是:

 .jqmData('role', 'table')
似乎并非始终有效,因为调用此函数时不会设置
data role=“table”

我尝试了以下方法:

 .attr('data-role', 'table')
属性已设置,表增强功能正常工作

也许还能帮助别人

 .attr('data-role', 'table')