小编典典

动态添加内容后,jQuery Mobile不应用样式

ajax

我知道这个问题出现在几个地方(迫使jQueryMobile重新评估动态插入的内容的样式/主题),但是没有一个对我有用的答案。

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

我尝试在要添加html的目标和页面上都设置targetRefresh,但是没有运气。插入了内容,但未应用样式。

我也尝试过

.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>

谢谢你的帮助

拉尔西


阅读 269

收藏
2020-07-26

共1个答案

小编典典

尝试调用.trigger("create")具有新内容的元素。

根据jQuery Mobile文档,“该create事件适合增强包含一个或多个小部件的原始标记。”

编辑 :从jQuery Mobile 1.4开始,.trigger('create')
不推荐使用,而应该使用.enhanceWithin()。(感谢John Mc的单挑。)

2020-07-26