我知道之前已经问过这个问题而且我已经阅读了所有的解决方案。他们都没有工作。
我有一个可折叠的套装,里面有5个可折叠的元素。
<div data-role="collapsibleset" id="mySet" data-inset="false" class="ui-nodisc-icon ui-alt-icon">
<div data-role="collapsible" id="1">
</div>
<div data-role="collapsible" id="2">
</div>
<div data-role="collapsible" id="3" >
</div>
<div data-role="collapsible" id="4">
</div>
<div data-role="collapsible" id="5">
</div>
</div>
组件是使用jQuery构建的,每个组件的html都更新了。
$('#' + key).html(myHTMLString);
其中key是div的id,myHTMLString是用jQuery构造的。
这在第一次进入页面时非常有效,但在此之后,可折叠的设备会丢失所有格式。可折叠标题周围没有锚点,并且没有一个div =&#34; ui-collapsible-content ui-body-inherit&#34;当你第一次访问时,你就开始了。
我已经尝试了
的每个组合$('#mySet').collapsibleset().trigger('create');
$("#mySet").collapsibleset("refresh");
$( "#mySet" ).trigger( "updatelayout" );
$("#mySet").enhanceWithin();
以及我能找到的更多内容。没有什么能改变它。
任何想法为什么?如果它根本不起作用,除了在第一次访问时没有成功,而不是下一次访问时,我会感到困惑吗?奇异。
编辑:
我修改了代码,因此h4和p标签位于html文档中而不是动态插入,我将这些数据添加到它们中:
$('#' + key + "_head").html(myHeadingHTMLString);
$('#' + key + "_content").html(myContentHTMLString);
这已经恢复了可折叠的div但它仍然取消了格式化,因为在第二次访问时(它仍然可以正常工作)锚标记
<a href="#" class="ui-collapsible-heading-toggle ui-btn ui-btn-icon-left ui-icon-plus ui-btn-inherit">
第二次访问时未添加。
为什么不在地球上?我在构建它的过程中使用了.collapsibleset(),无论我做什么都是如此。
答案 0 :(得分:0)
尝试:
$("#mySet").enhanceWithin().collapsibleset('refresh');