Heim > Web-Frontend > js-Tutorial > Javascript - HTML的request类_javascript技巧

Javascript - HTML的request类_javascript技巧

WBOY
Freigeben: 2016-05-16 19:28:13
Original
1002 Leute haben es durchsucht

做中英转换的时候,要准确的获取参数并取出,所以做了一个简单的html中用js获取当取地址栏的一个Object。
里面有三个方法:
1、request.QueryString("参数")//获取指定参数,返回字符串;
2、request.QueryStrings();//获取全部参数,并返回数组;
3、request.setQuery("参数","参数的值");//如果当前地址栏有此参数,那么将更新此参数,否则返回一个新的地址栏参数字符串。
例如:
当前地址栏参数字符串为:?name=a&site=never_online

alert(request.setQuery("name","blueDestiny"))

如果地址栏参数中有"name",那么返回?name=blueDestiny&site=never_online

setQuery方法有自动追加参数的功能。如:
当前地址栏参数字符串为:?site=never_online
alert(request.setQuery("name","blueDestiny"))
则返回?site=never_online&name=blueDestiny

同理,如果地址栏没有参数,也会自动追加参数
alert(request.setQuery("name","blueDestiny"))
返回?name=blueDestiny

<script> <BR><!-- <BR>// author: never-online <BR>// web: never-online.net <BR>var request = { <BR> QueryString : function(val) { <BR> var uri = window.location.search; <BR> var re = new RegExp("" +val+ "\=([^\&\?]*)", "ig"); <BR> return ((uri.match(re))?(uri.match(re)[0].substr(val.length+1)):null); <BR> }, <BR> QueryStrings : function() { <BR> var uri = window.location.search; <BR> var re = /\w*\=([^\&\?]*)/ig; <BR> var retval=[]; <BR> while ((arr = re.exec(uri)) != null) <BR> retval.push(arr[0]); <BR> return retval; <BR> }, <BR> setQuery : function(val1, val2) { <BR> var a = this.QueryStrings(); <BR> var retval = ""; <BR> var seted = false; <BR> var re = new RegExp("^" +val1+ "\=([^\&\?]*)$", "ig"); <BR> for(var i=0; i<a.length; i++) { <BR> if (re.test(a[i])) { <BR> seted = true; <BR> a[i] = val1 +"="+ val2; <BR> } <BR> } <BR> retval = a.join("&"); <BR> return "?" +retval+ (seted ? "" : (retval ? "&" : "") +val1+ "=" +val2); <BR> } <BR>} <BR>alert(request.setQuery("e","b")) <BR>//--> <BR></script>

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage