我知道这个问题出现几个地方(
Forcing jQuery Mobile to re-evaluate styles/theme on dynamically inserted content),但没有一个答案,为我工作。
我使用ajax加载一些内容,并将其插入到一个div像这样:
$.ajax({ url: "../Services/CalendarService.cshtml?service=true",cache: false,success: function (data) { data = $.parseJSON(data); var s = $("#user_tmpl").html(); var s1 = tmpl(s,data); $("#target").html(s1); $("#targetRefresh").page(); } });
我试图设置targetRefresh的目标我添加html到和页面上,但没有运气。插入角色,但不应用样式。
我也试过
.trigger("enhance")
任何想法该怎么办?
插入的html是一堆的:
<div data-theme="e" data-collapsed="true" data-role="collapsible"> <h3>MyOwner2AA</h3> <p>MyDescription</p> <p>/Date(1320339836735)/</p> <p>MyOwner</p> <i></i> </div>
感谢任何帮助
Larsi
尝试对带有新内容的元素调用.trigger(“create”)。
根据jQuery Mobile docs,“创建事件适合于增强包含一个或多个小部件的原始标记。
编辑:从jQuery Mobile 1.4,.trigger(‘create’)is deprecated,你应该使用.enhanceWithin()。 (感谢John Mc为单挑。)