Jquery mobile 如何让jQuery Mobile在生成的代码上重新执行?

Jquery mobile 如何让jQuery Mobile在生成的代码上重新执行?,jquery-mobile,Jquery Mobile,我试图用Javascript生成一些jQuery移动元素。javascript运行并将生成的元素放入myTestdiv后,样式和脚本不会附加到静态内容上。有没有办法让jQuery在生成的代码上执行 下面是一个例子: 标记: <!-- Does not look correct when populated --> <div id="myTest"> </div> <!-- Looks correct --> <div data-role="

我试图用Javascript生成一些jQuery移动元素。javascript运行并将生成的元素放入
myTest
div后,样式和脚本不会附加到静态内容上。有没有办法让jQuery在生成的代码上执行

下面是一个例子:

标记:

<!-- Does not look correct when populated -->
<div id="myTest">
</div>

<!-- Looks correct -->
<div data-role="collapsible-set" data-theme="d" data-content-theme="d" data-mini="true" data-corners="false">
  <div data-role="collapsible">
    <h3>Test</h3>
  </div>
</div>

试验
脚本:

$(document).ready(onloadFunc);

function onloadFunc() {
  var parent = $('<div data-role="collapsible-set" data-theme="d" data-content-theme="d" data-mini="true" data-corners="false">');
  var item = $("<h3>").html("test");
  parent.append(item);
  $("#myTest").append(parent);
}
$(文档).ready(onloadFunc);
函数onloadFunc(){
var父项=$('');
var item=$(“”).html(“测试”);
父项。追加(项);
$(“#myTest”)。追加(父项);
}

链接到jsfiddle:

首先,您的标记实际上是稍微关闭的,小部件应该包含几个可折叠的小部件

例如(摘自)

例如,如果您有几个小部件需要增强(或者只是为了简单起见),您可以改为触发create方法(这不适用于您当前的标记,但如果您纠正它,它应该会)


我认为这没什么用。如果是这样的话,应该可以这样做,对吗?:很抱歉,您需要使用可折叠的set data角色在div上调用它,而不是在父div上调用它。我更新了我的帖子。另外,我应该指出的是,如果您有许多小部件需要初始化,您应该能够触发页面上的create事件,例如
$(#myJQMPage')。触发器('create')
,但我不确定它在当前文档中的位置。
<div data-role="collapsible-set">
  <div data-role="collapsible" data-collapsed="false">
  <h3>Section 1</h3>
   <p>I'm the collapsible set content for section 1.</p>
   </div>
   <div data-role="collapsible">
    <h3>Section 2</h3>
    <p>I'm the collapsible set content for section 2.</p>
    </div>
</div>
$("#myTest").append(parent).find('div').collapsible(); 
 $("#myTest").append(parent).trigger('create');