Javascript 参数未触发的jQuery移动页面加载代码
除非物理刷新页面,否则此代码似乎不会触发。我试过pageshow、pagebeforeshow和其他一些,但都没有改变。test console.log甚至不会启动。一旦加载vendor.html?id=1,即导航到包含上述AJAX代码的页面,就会触发此事件。有什么建议吗?此jQuery Mobile 1.4.5代码将为每次访问页面重新加载数据:Javascript 参数未触发的jQuery移动页面加载代码,javascript,jquery,ajax,Javascript,Jquery,Ajax,除非物理刷新页面,否则此代码似乎不会触发。我试过pageshow、pagebeforeshow和其他一些,但都没有改变。test console.log甚至不会启动。一旦加载vendor.html?id=1,即导航到包含上述AJAX代码的页面,就会触发此事件。有什么建议吗?此jQuery Mobile 1.4.5代码将为每次访问页面重新加载数据: $("#home").on("pageload", function() { console.log("test2"); var ur
$("#home").on("pageload", function() {
console.log("test2");
var url = window.location.search;
var split = url.split('=');
var vendorID = split[1];
$.ajax({
type: "POST",
url: "vendorpull.php",
data: 'id=' + vendorID,
cache: false,
success: function(data)
{
document.getElementById('vendor-data').innerHTML = data;
}
});
});
$("#home").ready(function() { //You can also use $(document).ready(function() {
console.log("test2");
var url = window.location.search;
var split = url.split('=');
var vendorID = split[1];
$.ajax({
type: "POST",
url: "vendorpull.php",
data: 'id=' + vendorID,
cache: false,
success: function(data)
{
document.getElementById('vendor-data').innerHTML = data;
}
});
});
您使用的是什么版本的jquery?确切地说,如果您想在DOM中插入一些数据,那么为什么要使用pageload直接调用此url onclick,并且无论您将获得什么数据,都可以将其插入到you DOM中。如果您想获得这种结果,则不需要pageload。
$(document).on("pagecontainerbeforeshow", function(e, ui) {
var pageId = $(":mobile-pagecontainer").pagecontainer("getActivePage").prop("id");
/* JQM NAVIGATE #2 */
if (typeof ui.toPage == "object") {
/* manipulate page navigating to */
switch (pageId) {
case "home":
var url = window.location.search;
var split = url.split('=');
var vendorID = split[1];
$.ajax({
type: "POST",
url: "vendorpull.php",
data: 'id=' + vendorID,
beforeSend: function() {
$.mobile.loading("show");
},
cache: false,
success: function(data) {
$("#vendor-data").html(data);
$("#home .ui-content").trigger("updatelayout");
},
complete: function() {
$.mobile.loading("hide");
},
error: function() {
$.mobile.loading("hide");
}
});
break;
default:;
}
}
});