2013-03-27 32 views
0

我有这段代码。它获取请求数据并使用刷新将其显示在DIV中。AJAX请求没有样式的jQuery链接

为什么它显示要求像“简单文本”数据,DIV,但无法显示,例如这条线:

<a href="#" data-role="button">Button</a> 

与应用/ CSS渲染和jQuery.mobile按钮样式?我错过了什么吗?

<!DOCTYPE html> 
<html> 
    <head> 
    <link rel="stylesheet" href="http://code.jquery.com/mobile/1.3.0/jquery.mobile-1.3.0.min.css"> 
    <script src="http://code.jquery.com/jquery-1.9.1.min.js"></script> 
    <script src="http://code.jquery.com/mobile/1.3.0/jquery.mobile-1.3.0.min.js"></script> 
    <script> 
     function GetData() 
     { 
     nocache = "&nocache=" + Math.random() * 1000000; 
     var request = new XMLHttpRequest(); 
     request.onreadystatechange = function() 
     { 
      if (this.readyState == 4) { 
      if (this.status == 200) { 
       if (this.responseText != null) { 
       document.getElementById("buttons").innerHTML = this.responseText; 
       } 
      } 
      } 
     } 
     request.open("GET", "state" + nocache, true); 
     request.send(null); 
     setTimeout('GetData()', 1000); 
     } 
    </script> 
    </head> 
    <body onload="GetData()"> 
    <div id="buttons" data-role="content"> 
    </div> 
    </body> 
</html> 

回答

1

替换此document.getElementById("buttons").innerHTML = this.responseText;

$("#buttons").html(this.responseText); 

这就是我做的。

而且,看到你正在使用jQuery你可以替换与检查准备状态等处理与$(function(){ //your code here });

您还可以再用<body onload="GetDate()">做掉,只是有<body>你的代码的很大一部分。