地址应该为"bookhtmlId="+bookId+"&Uid="+Uid;需要添加&连接符
可用以下对象:
<script type="text/javascript" language="javascript">
var request = {
QueryString: function (val) {
var uri = windowlocationsearch;
var re = new RegExp("" + val + "\=([^\&\])", "ig");
return ((urimatch(re)) (urimatch(re)[0]substr(vallength + 1)) : null);
}
}
</script>
可用requestQueryString("id")和 requestQueryString("uid")来获取id和uid。
javascript中的locationhref有很多种用法,主要如下。
selflocationhref="/url"
当前页面打开URL页面
locationhref="/url"
当前页面打开URL页面
windowslocationhref="/url"
当前页面打开URL页面,前面三个用法相同。
thislocationhref="/url"
当前页面打开URL页面
parentlocationhref="/url"
在父页面打开新页面
toplocationhref="/url"
在顶层页面打开新页面
如果页面中自定义了frame,那么可将parent
self
top换为自定义frame的名称,效果是在frame窗口打开url地址
此外,windowlocationhref=windowlocationhref;和windowlocationReload()和都是刷新当前页面。区别在于是否有提交数据。当有提交数据时,windowlocationReload()会提示是否提交,windowlocationhref=windowlocationhref;则是向指定的url提交数据
在写ASPNet程序的时候,我们经常遇到跳转页面的问题,我们经常使用ResponseRedirect
做ASPNET框架页跳转,如果客户要在跳转的时候使用提示,这个就不灵光了,如:
复制代码
代码如下:
ResponseWrite("<
script>alert('恭喜您,注册成功!');<
/script>");
ResponseRedirect("mainhtml");
这时候我们的提示内容没有出来就跳转了,和ResponseRedirect("mainhtml");没有任何区别。
这时我们采用下面代码试验一下:
ASPNET框架页跳转的另一实现
复制代码
代码如下:
ResponseWrite("<
script
language=javascript>alert('恭喜您,注册成功!')<
/script>");
ResponseWrite("<
script
language=javascript>windowlocationhref='mainhtml'<
/script>");
这个即实现了我们的要求,在提示后,跳转页面。
最重要的是windowlocationhref
语句可以实现一个框架的页面在执行服务器端代码后刷新另一个框架的页面(ResponseRedirect无法达到,至少我没有发现):
如:indexhtm页面中有二个框架,分别为
frameLeft和frameRight,在frameRight页面中执行服务器端代码后刷新frameLeft中的页面。
先前最常见的是注册之后,自动刷新登陆框,让登陆框换成已登陆页面,只要在注册成功的代码之后加上一段,即可以实现刷新另个框架的页面。代码如下:
复制代码
代码如下:
ResponseWrite("<
script
language=javascript>alert('恭喜您,注册成功!')<
/script>");
ResponseWrite("<
script
language=javascript>windowparentframeLeftlocationhref='mainhtml'<
/script>");
这样就搞定了ASPNET框架页跳转中断的问题。其实asp、php中一般都使用这种方式。
"windowlocationhref"、"locationhref"是本页面跳转
"parentlocationhref"是上一层页面跳转
"toplocationhref"是最外层的页面跳转
举例说明:
如果A,B,C,D都是jsp,D是C的iframe,C是B的iframe,B是A的iframe,如果D中js这样写
"windowlocationhref"、"locationhref":D页面跳转
"parentlocationhref":C页面跳转
"toplocationhref":A页面跳转
如果D页面中有form的话,
<form>:
form提交后D页面跳转
<form
target="_blank">:
form提交后d出新页面
<form
target="_parent">:
form提交后C页面跳转
<form
target="_top">
:
form提交后A页面跳转
关于页面刷新,D
页面中这样写:
"parentlocationreload();":
C页面刷新
(当然,也可以使用子窗口的
opener
对象来获得父窗口的对象:windowopenerdocumentlocationreload();
)
"toplocationreload();":
A页面刷新
用该属性获取页面 URL 地址:
windowlocation 对象所包含的属性
如图就是取出url中的参数。
JS 脚本捕获页面 GET 方式请求的参数?其实直接使用 windowlocationsearch 获得,然后通过 split 方法结合循环遍历自由组织数据格式。
大概处理如下:
看不懂你的意思,猜测是现在href未定,按到时候的网站进行定位再加工href;
这样的情况一般用相对地址就可以了。
你一定要的话,一下一段代码试试:
<script>
var str=function(){
var str1=windowlocationhref;
//下面加入各种 *** 作,如截取部分地址substring();添加部分地址+"";等等。
//这里取添加
str1=str1+"22"
windowlocationhref=str1
}
</script>
<a href="javascript:str()">222</a>
windwopen(' >
可以直接使用windowlocationhref进行页面跳转
windowlocationhref ="/punch/clock_frmhtml"
问号传参:
windowlocationhref ="/punch/clock_frmhtmlmodFlag="+modFlag+'&role='+role;
那么我们在新页面接收参数, 并且将参数转为可用的json格式时, 可以用下面的方法:
varurl = locationsearch;//获取url中""符后的字串 ('modFlag=business&role=1')
vartheRequest =newObject();
if( urlindexOf("") !=-1) {
varstr = urlsubstr(1);//substr()方法返回从参数值开始到结束的字符串;
varstrs = strsplit("&");
for(vari =0; i < strslength; i++ ) {
theRequest[ strs[ i ]split("=")[0] ] = ( strs[ i ]split("=")[1] );
}
consolelog( theRequest );//此时的theRequest就是我们需要的参数;
}
以上就是关于javascript获得页面参数 window.location.href="book.htmlId="+bookId+"Uid="+Uid;全部的内容,包括:javascript获得页面参数 window.location.href="book.htmlId="+bookId+"Uid="+Uid;、window.location.href的用法(动态输出跳转)、js中window.location.search的用法和作用等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)