.Net源码论坛 [ 繁体中文 ]

发新话题 回复该主题

[jquery-ajax],求助,好奇怪的问题。。。 [复制链接]

楼主
这个不是广告,我研究一网站的源码发现一问题,思考了好久,不得其解,特拿上来问下,不懂就问:
首先是页面:http://www.paixie.net/cart/trolley.php,此网站是卖鞋子的,这个是其中一个结算页面,如果没购物访问,可能会history.back,所以有心帮忙的同学麻烦购物一件来试下,购物是cookie的,不用先注册。
购物后,查看购物车,然后去结算,如果你没登录,这时候会弹一个框出来要你登录或者注册,
问题在这里:
看此页面的body,有个自己加的属性rel="trolley"
再查看他的JS:http://img-cdn2.paixie.net/new_script/trolley.js
第76行起:
  1. if(result=='success')
  2. {                
  3.         if ($('body').attr('rel')=='trolley' || $('body').attr('rel')=='cart' || $('body').attr('rel')=='reload')
  4.        {
  5. //没登录前body已经写明属性是trolley了,无论如何都是执行此函数了,怎么能无刷新改动用户信息栏呢,但是很奇怪,他做到了。
  6. //已经查看过其它js或者页面了,未见有改动body属性的值。。。
  7. //我自写了一页面来测试,没有他的效果,我的效果就是刷新后,没登录上来的信息,还弹登录框
  8.         window.location.reload();
  9.         window.location.reload();
  10.         }
  11.         else
  12.        {
  13.             close_winLogin();//关闭当前层
  14.             refreshUser();//无刷新改动用户状态信息,就是右上角的,要显示用户名,还是显示要登录
  15.         }
  16.        $('#jsLoginForm input[name="username"]').val('');
  17.        $('#jsLoginForm input[name="password"]').val('');
  18. }
  19. else
  20. {
  21.     alert('用户名密码出错。');
  22.     $('#jsLoginForm input[name="password"]').val('');
  23. }
复制代码
就是ajax返回成功数据后,如果body的属性rel的值为trolley或者cart或者reload,就刷新两下页面,否则检测用户是否登录,然后无刷新改动用户信息栏,问题已经写在注释了,好心人看看哇,想了一晚上。。
最后编辑scyyzgxh 最后编辑于 2011-08-23 23:25:38
分享 转发
TOP
沙发

各位高人帮忙看下,可能是我哪里看漏了,毕竟这么大堆js,我是未写过的。。。
TOP
发新话题 回复该主题