日期:2014-05-18  浏览次数:20371 次

分享大家一个刚解决的问题
一个用JS跳转页面的问题,卡在这好久了,真是无限郁闷啊,检查JS代码,全部没问题,也没有其他多余代码,可就是不跳转,而是刷新的一下页面具体代码如下:

var flag=UserJoin.CreatAccount(username,password,companyname,email,province,city,site,address,post,tel,qq,sorta,commender);
if(flag.value=="1")
{
window.navigate("regok.aspx?UID="+username);
}
else
{
alert("服务器正忙,请稍后再试!");
}

这是一个用户注册页面,可以肯定的是:flag.value肯定是等于“1”的,因此,window.navigate("regok.aspx?UID="+username); 是肯定会执行的,之前还尝试过用 window.location.href="~~~~" ; self.location='top.htm'; 等等,当然,window.open("~~")是可以的,但不是我要的结果,不能从新窗口打开,也不能从新窗口打开,再close()这个页面,这样做的结果是有的浏览器不支持……

郁闷了好久,此页面中的<form>中的action属性去掉,也无济于事,于是万般无奈之下,把<form> 中的 post 属性由默认的post,改为get,竟然就可以了……

在网上找了好久的都没这个情况,现在贴出来,分享一下!


------解决方案--------------------
谢谢楼主分享
不知道这种方式支持多种浏览器么?
感觉还是挺不错的。
------解决方案--------------------
这个不是个bug吧……我试了一下,post/get都可以……但是用html控件可以,用asp.net的button控件就不跳转了……