如何让页面跳转后,再执行下面程序

冰镇宝贝321 2013-07-24 01:11:42

$.ajax({
url: "/Member/EditMemeberInfo",
data: d,
type: 'post',
dataType: 'json',
//async: false,
success: function (val) {
if (val.Code == -2) {
Cxlm.NotLogin();
}
else if (val.Code == 0) {
Cxlm.poptip_output("修改失败", "fail");
}
else {
Cxlm.poptip_output("修改成功", "success", false, "/Member/Basic_Info?from=" + subUrl);

}
}
});
setTimeout(function () {
alert($(".js-check-mobile").html());
}, 5000);


求大牛帮忙,我现在正在使用ajax 执行到
Cxlm.poptip_output("修改成功", "success", false, "/Member/Basic_Info?from=" + subUrl);//这个能够跳转到Basic_Info页面


现在有个问题想问下,就是跳转后的页面有个
$(".js-check-mobile").html();//页面中有个控件
,之前的页面,即跳转之前页面是没有的



现在遇到情况如下,就是没跳转就读取了
$(".js-check-mobile").html();//页面中有个控件


我想要实现的是 页面跳转后,完成了跳转,再到新页面继续执行这个 html获取,不知道这个是可不可行,如果行,帮个忙,嗯感激不尽那

注://async: false, 这个也考虑了 ,没用, 帮忙看下
...全文
578 12 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
冰镇宝贝321 2013-07-25
  • 打赏
  • 举报
回复
引用 10 楼 fzfei2 的回复:
[quote=引用 楼主 bkq421511585 的回复:] 求大牛帮忙,我现在正在使用ajax 执行到
Cxlm.poptip_output("修改成功", "success", false, "/Member/Basic_Info?from=" + subUrl);//这个能够跳转到Basic_Info页面
现在有个问题想问下,就是跳转后的页面有个
$(".js-check-mobile").html();//页面中有个控件
,之前的页面,即跳转之前页面是没有的 现在遇到情况如下,就是没跳转就读取了
$(".js-check-mobile").html();//页面中有个控件
我想要实现的是 页面跳转后,完成了跳转,再到新页面继续执行这个 html获取,不知道这个是可不可行,如果行,帮个忙,嗯感激不尽那 注://async: false, 这个也考虑了 ,没用, 帮忙看下
Cxlm.poptip_output("修改成功", "success", false, "/Member/Basic_Info?from=" + subUrl);//这个能够跳转到Basic_Info页面
不知你这是弹出层,还是整个页面URL变了 如果是页面跳转了, 你干吗不传参给Basic_Info页,根据参数 再执行 [/quote] 想想 也就能用这个方法了
fzfei2 2013-07-25
  • 打赏
  • 举报
回复
引用 楼主 bkq421511585 的回复:
求大牛帮忙,我现在正在使用ajax 执行到
Cxlm.poptip_output("修改成功", "success", false, "/Member/Basic_Info?from=" + subUrl);//这个能够跳转到Basic_Info页面
现在有个问题想问下,就是跳转后的页面有个
$(".js-check-mobile").html();//页面中有个控件
,之前的页面,即跳转之前页面是没有的 现在遇到情况如下,就是没跳转就读取了
$(".js-check-mobile").html();//页面中有个控件
我想要实现的是 页面跳转后,完成了跳转,再到新页面继续执行这个 html获取,不知道这个是可不可行,如果行,帮个忙,嗯感激不尽那 注://async: false, 这个也考虑了 ,没用, 帮忙看下
Cxlm.poptip_output("修改成功", "success", false, "/Member/Basic_Info?from=" + subUrl);//这个能够跳转到Basic_Info页面
不知你这是弹出层,还是整个页面URL变了 如果是页面跳转了, 你干吗不传参给Basic_Info页,根据参数 再执行
冰镇宝贝321 2013-07-25
  • 打赏
  • 举报
回复
引用 7 楼 wzs_xyz 的回复:
做不到,刷新和跳转也区分不开 变通解决方案 你可以在页面load里面往cookie写页面url,并在写之前读取这个cookie,看是不是与当前url一致,如果一致则认为是刷新
这个可以试试,不过,用flag传递,判断可以不
冰镇宝贝321 2013-07-25
  • 打赏
  • 举报
回复
引用 6 楼 u011096386 的回复:
1、现在遇到情况如下,就是没跳转就读取了 这是因为 你的ajax请求是异步的 你已将 //async: false, 注释了 2、$(".js-check-mobile").html(); 这段代码要放到 /Member/Basic_Info 页面中去执行 不知你 Cxlm.poptip_output 方法 是打开个新页面 还是 层嵌套iframe
答1: 这个我就是先打开的,试了,没用 才注释掉了,可能就是js生存周期问题吧 答2: 这个我现在也打算放在/Member/Basic_Info 页面了,对了那个 Cxlm.poptip_output 这个方法的
 Cxlm.poptip_output("修改成功", "success", false, "/Member/Basic_Info?from=" + subUrl);
参数分别是,执行后的提示信息、成功还是失败、是否刷新、href即链接,这个链接不是iframe ,是新的打开页面
冰镇宝贝321 2013-07-25
  • 打赏
  • 举报
回复
寻找一个能判断页面是否刷新的方法,兼容chrome ie 等各大浏览器的
window.onbeforeunload   =   function(){      
      var   n   =   window.event.screenX   -   window.screenLeft;      
      var   b   =   n   >   document.documentElement.scrollWidth-20;      
      if(b   &&   window.event.clientY   <   0   ||   window.event.altKey)      
      {      
         alert("是关闭而非刷新");      
          window.event.returnValue   =   "是否关闭?";   
      }else{   
             alert("是刷新而非关闭");      
     }      
}
这个方法不兼容chrome 惆怅
未知数 2013-07-24
  • 打赏
  • 举报
回复
做不到,刷新和跳转也区分不开 变通解决方案 你可以在页面load里面往cookie写页面url,并在写之前读取这个cookie,看是不是与当前url一致,如果一致则认为是刷新
ztszhq 2013-07-24
  • 打赏
  • 举报
回复
1、现在遇到情况如下,就是没跳转就读取了 这是因为 你的ajax请求是异步的 你已将 //async: false, 注释了 2、$(".js-check-mobile").html(); 这段代码要放到 /Member/Basic_Info 页面中去执行 不知你 Cxlm.poptip_output 方法 是打开个新页面 还是 层嵌套iframe
冰镇宝贝321 2013-07-24
  • 打赏
  • 举报
回复
引用 3 楼 l676331991 的回复:
[quote=引用 2 楼 bkq421511585 的回复:] 额,亲,其实我用这个获取这个html,就是想要,先跳转,再执行这个alert,关键不是看输出什么,因为这个只是在新的页面中出现,如果,不是null 就成功了,现在是,老是先是null,代表意思,在没挑战之前就执行了,这个不是我希望看到的 至于为啥不放在 success 这个我也试了,没用。。。。唉
额,你想用前一个页面的js操纵一个将来要打开的未来的页面上的某个元素? 是这样理解么? 我觉得你要做的是把alert放到新页面上。。。js的生存周期是页面打开到页面关闭,包括刷新或者跳转。[/quote] 对的,是这个意思,您的讲解很到位,可能就是js的生存周期是页面打开到页面关闭,包括刷新或者跳转。 我知道为啥那个执行不了了,那我那个方法放哪呢,不能放在onload ,这样刷新页面,就会执行,我不希望的呀,我要的结果只希望是在跳转后,才去执行,至于刷新,不执行,不过,我想了下,不放在load里,无法执行啊
l676331991 2013-07-24
  • 打赏
  • 举报
回复
当页面刷新或者跳转了,那是下一个js的生存周期了已经。
l676331991 2013-07-24
  • 打赏
  • 举报
回复
引用 2 楼 bkq421511585 的回复:
额,亲,其实我用这个获取这个html,就是想要,先跳转,再执行这个alert,关键不是看输出什么,因为这个只是在新的页面中出现,如果,不是null 就成功了,现在是,老是先是null,代表意思,在没挑战之前就执行了,这个不是我希望看到的 至于为啥不放在 success 这个我也试了,没用。。。。唉
额,你想用前一个页面的js操纵一个将来要打开的未来的页面上的某个元素? 是这样理解么? 我觉得你要做的是把alert放到新页面上。。。js的生存周期是页面打开到页面关闭,包括刷新或者跳转。
冰镇宝贝321 2013-07-24
  • 打赏
  • 举报
回复
引用 1 楼 l676331991 的回复:
What? 页面都跳走了,你获取html干吗使? 这事在debug?如果要debug,加一个断点或者console里log下就是了,console可以设置为的记录之前页面的log记录。

setTimeout(function () {
            alert($(".js-check-mobile").html());
        }, 5000);
setTimeout?5秒后看看这货的html代码是啥?为毛不在success里面看看?在Cxlm.poptip_output之前?
额,亲,其实我用这个获取这个html,就是想要,先跳转,再执行这个alert,关键不是看输出什么,因为这个只是在新的页面中出现,如果,不是null 就成功了,现在是,老是先是null,代表意思,在没挑战之前就执行了,这个不是我希望看到的 至于为啥不放在 success 这个我也试了,没用。。。。唉
l676331991 2013-07-24
  • 打赏
  • 举报
回复
What? 页面都跳走了,你获取html干吗使? 这事在debug?如果要debug,加一个断点或者console里log下就是了,console可以设置为的记录之前页面的log记录。

setTimeout(function () {
            alert($(".js-check-mobile").html());
        }, 5000);
setTimeout?5秒后看看这货的html代码是啥?为毛不在success里面看看?在Cxlm.poptip_output之前?

87,997

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧