如何在 Ajax 请求后重新生成 jQuery Mobile 样式?
Posted
技术标签:
【中文标题】如何在 Ajax 请求后重新生成 jQuery Mobile 样式?【英文标题】:How to regenerate jQuery Mobile style after Ajax request? 【发布时间】:2011-01-26 14:48:16 【问题描述】:我想在通过 Ajax 加载附加内容后应用自动生成的 jQuery Mobile 样式(jQuery Mobile 类应用于页面加载)。
我通过 Ajax 加载了一些内容,这些内容被解析并组织成 <ul>
,但是 jQuery 通常应用于页面加载的样式不会再次应用于 Ajax 加载的内容。
【问题讨论】:
仅供参考:在 listview 上,Cyril 解释的刷新“方法”工作正常。如果您使用不支持“刷新”的元素,则可以使用 1.0b3 中的新触发功能:$('#my_element_id').trigger('create');
【参考方案1】:
假设您的 ul 是 jquery-mobile “listview”,请尝试使用以下命令刷新整个列表:
$('#yourlist').listview('refresh');
jQuery Mobile 文档 http://jquerymobile.com/demos/1.0a2/#docs/forms/plugin-eventsmethods.html
【讨论】:
很好,但似乎应用到列表的自定义样式似乎在“刷新”命令后消失了,有没有更好的方法来实现同样的效果,而不会丢失应用于“列表样式”的自定义样式" 我认为现在已弃用。 @Brice Favre 我现在正在尝试这个,但它没有任何作用。该方法未显示在我的代码提示中,实际上会导致运行时错误。看起来确实如此。您是否知道刷新列表的解决方法,因为这不再有效?【参考方案2】:我在使用这种刷新方法时也遇到了问题,在通过删除“刷新”进行更多搜索后让它工作,即:
$('#yourlist').listview();
在http://forum.jquery.com/topic/wish-listview-refresh-would-go-away 找到解释。在 1.1.1 中工作正常
【讨论】:
以上是关于如何在 Ajax 请求后重新生成 jQuery Mobile 样式?的主要内容,如果未能解决你的问题,请参考以下文章
如何在使用 jQuery 进行 ajax 请求后替换页面的整个 CSS?
如何在 Yii 中禁用 Ajax 请求的 jQuery 自动加载?