首次加载时不会显示打开页面中的Javascript警报功能

时间:2013-09-21 16:46:47

标签: javascript ajax jquery-mobile cordova

好吧,我正在尝试做的是,在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页面后显示警报?
抱歉,我的英语不好...... 谢谢,问候。

0 个答案:

没有答案