在ajax请求后重新初始化Jquery Mobile的所有元素?
我有下一页在ajax请求后重新初始化Jquery Mobile的所有元素?,jquery,html,css,jquery-mobile,Jquery,Html,Css,Jquery Mobile,我有下一页 <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> <link rel="stylesheet" href="<%= ResolveUrl("~/css/jquery.mobile-1.3.0.min.css") %>" /> </he
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<link rel="stylesheet" href="<%= ResolveUrl("~/css/jquery.mobile-1.3.0.min.css") %>" />
</head>
<body>
<form id="form1" runat="server">
<div>
<div data-role="page" id="newsDeatils">
<div data-role="content">
<h3 id="newsTitle"></h3>
<p id="newsCategory"></p>
<div id="newsDescription"></div>
</div>
</div>
</div>
</form>
<script src="<%= ResolveUrl("~/js/jquery.min.js") %>"></script>
<script>
$(document).bind("mobileinit", function () {
$.mobile.autoInitializePage = false;
});
</script>
<script src="<%= ResolveUrl("~/js/jquery.mobile-1.3.0.min.js") %>"></script>
<script src="<%= ResolveUrl("~/js/knockout-2.2.0.js") %>"></script>
<script src="<%= ResolveUrl("~/js/NewsDetails.js" )%>"></script>
<script>
$.mobile.initializePage();
</script>
</body>
</html>
$(文档).bind(“mobileinit”,函数(){
$.mobile.autoInitializePage=false;
});
$.mobile.initializePage();
NewsDetails.js将发送一个ajax请求,然后用一个表填充
newsDescription div
。但是什么都没用?我已经把$.mobile.initializePage()放进去了代码>内部成功回调然后一切都会正常工作。与其延迟初始化整个页面,不如允许对所有页面进行初始化,然后只初始化新代码。在jqmv1.3.2及更早版本中,您可以通过向成功回调添加以下代码来实现这一点
$('#newsDescription table').trigger('create');
这将允许整个页面进行初始化,并且如果用户的网络连接速度慢,可能会导致ajax请求需要一段时间,则可以防止未设置样式的页面闪现给用户