How to get the query string by javascript?

1.html

<a href="2.html?name=geovindu&sex=woman&age=12">test getQueryString</a>

2.html:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<title>javascript获取url参数和script标签中获取url参数</title>
<script type="text/javascript" src="jquery-1.7.1.min.js"></script>
<script type="text/javascript" src="js1.js?a=abc&b=汉字&c=123"></script>
<script type="text/javascript">
//lastest: url paramter: //测试链接:<a href="2.html?name=geovindu&sex=woman&age=12">test getQueryString</a>
var queryStrings=function() {//get url querystring
    var params=document.location.search,reg=/(?:^\?|&)(.*?)=(.*?)(?=&|$)/g,temp,args={};
    while((temp=reg.exec(params))!=null) args[temp[1]]=decodeURIComponent(temp[2]);
    return args;
};
//只取一个:
var queryString=function(key){
    return (document.location.search.match(new RegExp("(?:^\\?|&)"+key+"=(.*?)(?=&|$)"))||['',null])[1];
}

</script>
</head>

<body>
<div id="urlparamter"></div>
<div id="all"></div>
<div id="scriptparamter" name="scriptparamter"></div>
<div id="allscript"></div>
<input type="text" id="txtput" value=""/>
<script type="text/javascript">
var args=queryStrings();
document.getElementById("all").innerHTML=args.name+" | "+args.sex+" | "+args.age+",all";
//alert(args.name+" | "+args.sex+" | "+args.age);
var argsname=queryString("name");
var argssex=queryString("sex");
var argsage=queryString("age");
document.getElementById("urlparamter").innerHTML =argsname+","+argssex+","+argsage;

//document.getElementById("txtput").value="geo";
//$("#scriptparamter")[0].innerHTML="ges";
</script>
</body>

</html>

js1.js:

/*http://css.dusystem.com/example/index.html
window.location.protocol = "http:"
window.location.host = "css.dusystem.com"
window.location.pathname = "example/index.html"
http://stackoverflow.com/questions/901115/how-can-i-get-query-string-values-in-javascript
http://www.cnblogs.com/sohighthesky/archive/2010/01/21/1653126.html
http://www.codeproject.com/Tips/574956/How-to-get-URL-and-QueryString-value-in-an-ASP-NET

test: <a href="1.html?id=5&type=1&flag=0" title="d">test</a>
*/

var strget="du";

function getArgs(strParame)
{
var args = new Object( );
var query = location.search.substring(1); // Get query string
var pairs = query.split("&"); // Break at ampersand
for(var i = 0; i < pairs.length; i++) {
var pos = pairs[i].indexOf('='); // Look for "name=value"
if (pos == -1) continue; // If not found, skip
var argname = pairs[i].substring(0,pos); // Extract the name
var value = pairs[i].substring(pos+1); // Extract the value
value = decodeURIComponent(value); // Decode it, if needed
args[argname] = value; // Store as a property
}
return args[strParame]; // Return the object
}

//script paramter:
var getScriptArgs=function(){
//获取多个参数
    var scripts=document.getElementsByTagName("script"),
    script=scripts[scripts.length-1],//因为当前dom加载时后面的script标签还未加载,所以最后一个就是当前的script
    src=script.src,
    reg=/(?:\?|&)(.*?)=(.*?)(?=&|$)/g,
    temp,res={};
    while((temp=reg.exec(src))!=null) res[temp[1]]=decodeURIComponent(temp[2]);
    return res;
};

//
var argsscript=getScriptArgs();
//document.getElementById("scriptparamter").innerHTML =argsscript.a+" | "+argsscript.b+" | "+argsscript.c;
strget=argsscript.a;
//alert(argsscript.a+" | "+argsscript.b+" | "+argsscript.c+","+strget);
//document.getElementById("txtput").value=strget;
//document.getElementById("scriptparamter").innerHTML ="ge";
//txtput

//假如上面的js是在这个js1.js的脚本中<script type="text/javascript" src="js1.js?a=abc&b=汉字&c=123//"><//script>

var getScriptArg=function(key){//获取单个参数
    var scripts=document.getElementsByTagName("script"),
    script=scripts[scripts.length-1],
    src=script.src;
    return (src.match(new RegExp("(?:^\\?|&)"+key+"=(.*?)(?=&|$)"))||['',null])[1];
};
alert(getScriptArg("c"));

//set value
window.onload = function () {   

    getCommunitys(strget);
}

function getCommunitys(str) {

//document.getElementById("scriptparamter").innerHTML =str;
$("#scriptparamter")[0].innerHTML="ges";
document.getElementById("txtput").value=str;
}
时间: 2024-10-12 10:45:42

How to get the query string by javascript?的相关文章

把Map 转化为query string

如何把Map转化为query string呢? 什么是query string? 即型如name=whuang&age=27 Java代码   private String getRequestBodyFromMap(Map parametersMap,boolean isUrlEncoding/*,String charset*/) {           StringBuffer sbuffer = new StringBuffer();           for(Object obj:p

获取url中的query string

获取url中的query string util方法: Java代码   /***       * convert request query string to map       *        * @param queryString       * @return       */       public static Map<String, Object> parseQueryString(String queryString) {           if (ValueWidg

identifier string: IE6 JavaScript error: “Expected identifier, string, or number”

JS:data : {gid : lotid,tid : zid,}如果变量options有多个选项,那么我们可以用逗号分开:但是最后一个选项后不可以有逗号.虽然IE8和Firefox可以忽略这个逗号,但是IE6下会报错(据说IE7下也会报错) 本文链接http://www.cxybl.com/html/wyzz/JavaScript_Ajax/20130608/38476.html

如何用Javascript扩展String实现替换字符串中index处字符

String.prototype.replaceCharAt = function(n,c){ return this.substr(0, n)+ c + this.substr(n+1,this.length-1-n); } 查看本栏目更多精彩内容:http://www.bianceng.cnhttp://www.bianceng.cn/webkf/script/ 以上是小编为您精心准备的的内容,在的博客.问答.公众号.人物.课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索java

JSON与String互转的实现方法(Javascript)_javascript技巧

JSON => String: jsonToString: function(obj){ var THIS = this; switch(typeof(obj)){ case 'string': return '"' + obj.replace(/(["\\])/g, '\\$1') + '"'; case 'array': return '[' + obj.map(THIS.jsonToString).join(',') + ']'; case 'object': i

JavaScript的String字符串对象常用操作总结_javascript技巧

创建String对象方式声明:String对象的方法也可以在所有基本字符串值中访问到. 调用构造函数String(): var str = new String(); var str = new String('hello world');//初始化str,str.length = 11; String访问及查找的方式 1.访问(通过索引) (1)charAt()或[]1个参数,参数为字符位置,返回字符 var strValue = new String('hello world'); cons

JavaScript必知必会(三) String .的方法来自何方_javascript技巧

String 我们知道javascript 包括:number,string,boolean,null,undefined 基本类型和Object 类型. 在我的认知中,方法属性应该是对象才可以具有的. var str="hello,world"; var s=str.subString(,);//ell alert(typeof(str)+":"+typeof(s));//string:string 从上面的返回类型来看,str是string 类型的. 再看下面的

关于query Javascript CSS Selector engine_jquery

query是一个javascript css selector engine,小巧而功能强大,压缩后2k左右,可以很轻松的集成到代码当中.支持浏览器 IE6+.Firefox.Chrome.Safari.Opera 选择器query(selector[,context])    div    #intro    div#intro                        .red                    span.red    [name]     [name=keyword

javascript中数组(Array)对象和字符串(String)对象的常用方法总结_javascript技巧

本文实例总结了javascript中数组(Array)对象和字符串(String)对象的常用方法.分享给大家供大家参考,具体如下: 综述:笔者经常将数组的方法和字符串的方法混淆,这里写篇日志,做个区分 1.字符串对象 String是JavaScript中的五种基本类型之一. (1)字符串对象的创建 例1: var str="Hello world"; 或者 var str=new String("Hello world") (2)charAt()方法 charAt(