我正在为我们当地的田径俱乐部创建一个非常简单的移动应用程序。当我在我的本地主机上测试它时,应用程序似乎工作正常,但当我更改链接指向我的远程服务器,然后打包应用程序似乎没有任何渲染。我希望这是一个非常简单的解决方案。这是一个页面,我想使用Javascript将JSON对象填充到HTML框架中。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>United Track Club</title>
<link href="jquery-mobile/jquery.mobile-1.0.1.min.css" rel="stylesheet" type="text/css"/>
<!-- This reference to phonegap.js will allow for code hints as long as the current site has been configured as a mobile application. -->
<script src="jquery-mobile/jquery-1.7.2.min.js" type="text/javascript"></script>
<script src="/phonegap.js" type="text/javascript"></script>
<script src="jquery-mobile/jquery.mobile-1.0.1.min.js" type="text/javascript"></script>
<!--a name="viewport"content="width=device-width, initial-scale=1"> -->
</head>
<body>
<div data-role="page" id="runnerListPage">
<div data-role="header">
<h1>Runners2</h1></div>
<div data-role="content">
<ul id="runnerList" data-role="listview" data-filter="true">
</ul>
</div>
<div data-role="footer" data-position="fixed">
<div data-role="navbar">
<ul>
<li><a href="index.html" data-icon="home">Home</a></li>
<li><a href="#searchListPage" data-icon="search">Search</a></li>
<li><a href="#scheduleListPage" data-icon="grid">Schedule</a></li>
</ul>
</div>
</div>
</div>
</body>
</html>
这是我为填充上述代码而创建的JS。
$.getJSON('http://unitedtrack.org/Mobile/TF/getrunnerlist.php', function(data){
var object = data.items,
runnerCount = object.length,
target = document.getElementById('runnerList'),
i;
if (runnerCount>0){
for (i =0 ; i< runnerCount; i=i+1){
var unitrun=object[i],
EventDt = unitrun.First_Nm,
MeetNm = unitrun.Last_Nm;
target.innerHTML +='<li><a href="#">'+ EventDt +', ' +MeetNm +' </a></li>';
}
}
else {
alert('there are no runners');
}
});
target.addEventListener("click",data,false);
提前感谢您的帮助。
答案 0 :(得分:1)
您需要在要查询的页面上设置正确的标题(例如http://unitedtrack.org/Mobile/TF/getrunnerlist.php)。
您需要设置Access-Control-Allow-Origin标头。有关跨源请求的更多信息,请参阅链接。