解決辦法如下:
1.用ASCII碼替換百分号和與符号
var remark = $("#remark").val();
remark.replaceAll("ASCII69","%").replaceAll("ASCII70","&");
//展示時需要對原先替換的進行還原展示
remark.replaceAll("%","ASCII69").replaceAll("&","ASCII70");
2.在
//encodeURI() 函數可把字元串作為 URI 進行編碼。
//對以下在 URI 中具有特殊含義的 ASCII 标點符号,encodeURI()
//函數是不會進行轉義的: , / ? : @ & = + $
var uri="my test.php?name=%fff&car=saab#&";
document.write(encodeURI(uri)+ "
");
結果為:
my%20test.php?name=%25fff&car=saab#&
這裡将百分号編碼為 %25
//decodeURI() 函數可對 encodeURI()
該方法不會對 ASCII 字母和數字進行編碼,也不會對這些 ASCII 标點符号進行編碼: – _ . ! ~ * ‘ ( ) 。
其他字元(比如 :;/?:@&=+$,# 這些用于分隔 URI 元件的标點符号),都是由一個或多個十六進制的轉義序列替換的。
var uri="http://w3cschool.cn/my test.php?name=ståle&car=saab";
document.write(encodeURIComponent(uri));
//結果展示:
http%3A%2F%2Fw3cschool.cn%2Fmy
%20test.php%3Fname%3Dst%C3%A5le%26car%3Dsaab
//decodeURIComponent() 函數可對 encodeURIComponent()
// 函數編碼的 URI 進行解碼。
//提示:使用 encodeURIComponent() 方法可以對 URI 進行編碼。
總結
以上所述是小編給大家介紹的