Javascript 在IBM worklight中从服务器数据库检索数据

Javascript 在IBM worklight中从服务器数据库检索数据,javascript,ajax,ibm-mobilefirst,Javascript,Ajax,Ibm Mobilefirst,我正在IBM worklight中开发一个应用程序。通过Ajax,我必须连接到网站并从中检索数据,但它会出现以下错误: 未捕获的TypeError:无法在处调用null的方法“getElementsByTagName”file:///data/data/com.Test/files/www/default/Test.html:80 我怎样才能修好它?我的密码是 <!DOCTYPE HTML> <html> <head> <script>win

我正在IBM worklight中开发一个应用程序。通过Ajax,我必须连接到网站并从中检索数据,但它会出现以下错误:

未捕获的TypeError:无法在处调用null的方法“getElementsByTagName”file:///data/data/com.Test/files/www/default/Test.html:80

我怎样才能修好它?我的密码是

<!DOCTYPE HTML>



<html>
<head>
<script>window.$ = window.jQuery = WLJQ;</script>
<title>Test</title>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<meta name="viewport"
    content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=0">
<link rel="stylesheet" href="css/Test.css">
<script>
function loadXMLDoc()
{
var xmlhttp;
var txt,x,i;
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
  {
   if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
    xmlDoc=xmlhttp.responseXML;
    txt="";
   // x=xmlDoc.getElementsByTagName("Id");

var table = xmlDoc.getElementsByTagName("table");
var tds = table.getElementsByTagName("td");
alert(tds);
for (var i = 0; i < tds.length; i++) {
  alert(tds[i].innerHTML);
}



  /*    for (i=0;i<x.length;i++)
      {
      txt=txt + x[i].childNodes[0].nodeValue + "<br>";
      }  */
    document.getElementById("myDiv").innerHTML=txt;
    }
  }
xmlhttp.open("GET","http://www.marketing.com/msb_en.html",true);
xmlhttp.send();
}
</script>
</head>
<body id="content" style="display: none;">

<h2>MCollection:</h2>
<div id="myDiv"></div>
<button type="button" onclick="loadXMLDoc()">collection</button>
<!--<input type="button" value="button name" onclick="window.open('https://www.google.com.pk')" />  -->
    <!--application UI goes here-->
    <script src="js/initOptions.js"></script>
    <script src="js/Test.js"></script>
    <script src="js/messages.js"></script>
</body>
</html>

当您尝试使用时,xmlDoc看起来是空的。确保服务器返回您期望的内容,并且正确访问响应中的数据

一些与你的问题没有直接关系的建议。jQuery已加载到你的应用程序中。您可能想考虑使用它的Ajax功能,而不是直接使用XMLHutpReQuest.


同样,如果你使用工作灯,你可以考虑使用HTTPACTION而不是AJAX。如果您没有利用Worklight提供的功能,而不仅仅是一个浏览器来编写代码,那么您可能应该考虑平台的其他选项。

我在HTML中没有看到表。。。因此它会变为空…?是的…请建议我一些方法来解决它…但是从我给出的url中没有得到任何东西如果HTML中没有表元素,您希望如何检索它?没有表元素。
var table = xmlDoc.getElementsByTagName("table");