我有一个非常简单的JavaScript函数,完全正常,直到其中一个变量有一个'在里面。这就是我试过的:
function search(champ1,champ2,role) {
if((champ1!='')&&(champ2!='')){
if((champ1!=champ2)) {
var champ1_name = encodeURI(champ1);
var champ2_name = encodeURI(champ2);
var role_name = encodeURI(role);
window.location.href="http://myurl.com/"+role_name+"/"+champ1_name+"&"+champ2_name;
return false;
} else if(champ1==champ2) {
window.location.href="http://myurl.com/"+role;
}
}
}
但不幸的是,当我运行此脚本时,网址仍然包含'甚至在他们经过encodeURI()
答案 0 :(得分:0)
如果您需要转义'
,请执行.replace("'", "%27")
之类的操作。或者使用URL转义功能,该功能允许您提供需要转义的字符串。
decodeURIComponent("%27")
转换回"'"
。