好吧,我正在尝试做的是,在ajax中循环数据并在列表视图中显示它并允许它被点击..每个数据链接到另一个页面并包含一个id .. 在我点击之后,它会将我引导到一个新的HTML页面,其中包含ID的URL。
例如:htmlName.html?id = 1
这是我的代码:
//(first html)
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.2.1/jquery.mobile-1.2.1.min.css" />
<script src="http://code.jquery.com/jquery-1.8.3.min.js"></script>
<script src="http://code.jquery.com/mobile/1.2.1/jquery.mobile-1.2.1.min.js"></script>
<script>
$(document).ready(function()
{
var output = $('#output4');
$.ajax({
url: 'http://localhost/test1.php',
type: "GET",
dataType: 'jsonp',
jsonp: 'jsoncallback',
timeout: 5000,
success: function(data, status){
$.each(data, function(i,item){
var email = "<li><a href=\"app2.html?id="+item.lo+"\" data-transition=\"slide\"><h1>"+item.email+"</h1><img src="+item.comment+" /><p>"+item.email+"</p></a></li>";
output.append(email);
output.listview("refresh");});
},
error: function(){
output.text('There was an error loading the data.');
}});
});
</script>
打开的页面有一个Javascript Alert(id)。我从网址获取的ID(从上一页发送).. 但是我的问题是,当我加载页面时,警报不会出现,但是在我重新加载页面后它会出现..
以下是代码:
//second html
<script>
//function to get id from the URL
var params = {};
if (location.search) {
var parts = location.search.substring(1).split('&');
for (var i = 0; i < parts.length; i++) {
var nv = parts[i].split('=');
if (!nv[0]) continue;
params[nv[0]] = nv[1] || true;
}
}
var forIDalert = params.id;
alert(forIDalert);
</script>
无论如何我想知道,当我删除脚本时:
<script src="http://code.jquery.com/mobile/1.2.1/jquery.mobile-1.2.1.min.js"></script>
Alert函数应该运行(首次加载或不重新加载页面),但我需要该脚本,因为我正在使用jquery mobile和phonegap ..
那么,任何人都知道如何在我点击第一个HTML上的链接而不需要RELOAD页面后显示警报?
抱歉,我的英语不好......
谢谢,问候。