JS获取request参数 和改变request参数

来源地址

http://www.jb51.net/article/32627.htm

http://www.oschina.net/code/snippet_1398304_44646


给request赋值

function changeURLPar(destiny, par, par_value) 
{ 
var pattern = par+'=([^&]*)'; 
var replaceText = par+'='+par_value; 
if (destiny.match(pattern)) 
{ 
var tmp = '/'+par+'=[^&]*/g'; 
tmp = destiny.replace(eval(tmp), replaceText); 
return (tmp); 
} 
else 
{ 
if (destiny.match('[\?]')) 
{ 
return destiny+'&'+ replaceText; 
} 
else 
{ 
return destiny+'?'+replaceText; 
} 
} 
return destiny+'\n'+par+'\n'+par_value; 
} 

使用

destiny是目标字符串,比如是http://www.huistd.com/?id=3&ttt=3
par是参数名,par_value是参数要更改的值,调用结果如下:
changeURLPar(test, 'id', 99); // http://www.huistd.com/?id=99&ttt=3
changeURLPar(test, 'haha', 33); // http://www.huistd.com/?id=99&ttt=3&haha=33 



取值

方法一:正则分析法
 
  
 
function getQueryString(name) {
var reg = new RegExp( "(^|&)" + name + "=([^&]*)(&|$)" , "i" );
var r = window.location.search.substr( 1 ).match(reg);
if (r != null ) return unescape(r[ 2 ]); return null ;
}
 
这样调用:
 
alert(GetQueryString( "参数名1" ));
 
alert(GetQueryString( "参数名2" ));
 
alert(GetQueryString( "参数名3" ));
 
方法二:
"font-size: 16px;" >
 
这样调用:
复制代码
 

你可能感兴趣的:(JS获取request参数 和改变request参数)