大家好,我正在用 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>
这给了我如下查询字符串 Sample.aspx?Q1=1,&,Q2=1
我需要它像 `Sample.aspx?Q1=1&Q2= 1
最佳答案
要从字符串中删除逗号,您只需执行以下操作
s = s.replace(/,/g,'');
但在您的具体情况下,您想要的不是添加逗号。改变
location.href = '/Sample.aspx?' + arr;
至
location.href = '/Sample.aspx?' + arr.join('');
发生的情况是,将数组添加到字符串中会调用该数组上的 toString
,并且该函数会添加逗号:
""+["a","b"]
给出 "a,b"
关于javascript - 从 JavaScript 数组中删除逗号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20140840/