大家好,我正在用 javascript 中的查询字符串构建一个 url,如下所示,一切正常,但查询字符串之间有一个通讯,所以有人可以帮助我吗
<script type="text/javascript">
function RedirectLocation() {
var cntrl = "Q1;Q2";
var str_array = cntrl.split(';');
var cnt = str_array.length;
if (cnt == 0) {
location.href = '/callBack.aspx';
}
else {
var arr = [];
for (var i = 0; i < str_array.length; i++) {
str_array[i] = str_array[i].replace(/^\s*/, "").replace(/\s*$/, "");
arr.push(str_array[i] + '=1');
if (i != str_array.length - 1) {
arr.push('&');
}
}
location.href = '/Sample.aspx?' + arr;
}
}
</script>
Run Code Online (Sandbox Code Playgroud)
这给了我如下的查询字符串Sample.aspx?Q1=1,&,Q2=1我需要这样`Sample.aspx?Q1=1&Q2=1
要从字符串中删除逗号,您可以简单地执行以下操作
s = s.replace(/,/g,'');
Run Code Online (Sandbox Code Playgroud)
但在您的具体情况下,您想要的不是添加逗号。改变
location.href = '/Sample.aspx?' + arr;
Run Code Online (Sandbox Code Playgroud)
到
location.href = '/Sample.aspx?' + arr.join('');
Run Code Online (Sandbox Code Playgroud)
发生的情况是,将数组添加到toString字符串中会调用该数组,并且该函数会添加逗号:
""+["a","b"] 给出"a,b"
| 归档时间: |
|
| 查看次数: |
5605 次 |
| 最近记录: |