我有一个Html页面包含几个页面,其data-role = page为page1,page2等。 我试图使用以下代码
在page1的页面加载期间调用JS方法$("#page1").on("load",function () {
alert("hi")
$.ajax({
type: "GET",
url: "",
data: "{}",
contentType: "application/json",
dataType:"json",
success: function (msg) {
var BPRList = '';
$.each(msg, function(i,v){
BPRList += '<li onClick="GetBprDetails('+ v.BPRNo +')"><a href="#bprPage" data-transition="slide"><p class="title">' + v.BPRNo + '</p><p class="bodyEle">' + v.BPR_Product +'</p><p class="bodyEle">' + v.BPR_Details+ '</p><br/><p class="bodyEle">' + v.BPR_Status + ':</p></a></li>'
})
$("#BPRListTable").html(BPRList)
$('[data-role=listview]').listview('refresh');
},
error: function () {
alert("BPR List Error");
}
}); });
在执行上述函数期间,我无法在formload期间获取输出 好像我调用上面的方法作为按钮点击事件我能够获得输出。 可能是上面代码中的错误.. 我更关心代码。
$("#page1").on("load",function () {
--statements
})
答案 0 :(得分:1)
$(window).load(function () {
alert("hi")
});
如果您想在页面加载时显示结果,请尝试此操作。在$(document).ready(function(){});
答案 1 :(得分:1)
尝试将'page:load'放入'load'而不是'load'它可能会更好用:
$("#page1").on("page:load",function () {
- - - -
- - - -
- - - -
});
答案 2 :(得分:1)
找到解决方案我自己
$(document).ready(function(){
$(document).on('pagebeforeshow','#page1',function () {
--statements
}); });
答案 3 :(得分:0)
我认为使用pageinit会没问题
$(document).on('pageinit', '#page1', function() {...})
以这种方式,您可以避免使用document.ready,这也是jquery mobile不推荐的。