在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请求需要一段时间,则可以防止未设置样式的页面闪现给用户