1. 程式人生 > >js過濾url中的特殊字元

js過濾url中的特殊字元

在URL傳遞引數中,有一些特殊字元,而這些些符號在URL中是不能直接傳遞的,如果要在URL中傳遞這些特殊符號,那麼就要使用他們的編碼了。
下表中列出了一些URL特殊符號及編碼十六進位制值
1. + URL 中+號表示空格 %2B
2. 空格 URL中的空格可以用+號或者編碼 %20
3. / 分隔目錄和子目錄 %2F
4. ? 分隔實際的 URL 和引數 %3F
5. % 指定特殊字元 %25
6. # 表示書籤 %23

7. & URL 中指定的引數間的分隔符 %26

8. = URL 中指定引數的值 %3D

replace() 方法如果直接用str.replace("-","!") 只會替換第一個匹配的字元.
而str.replace(/\-/g,"!")則可以替換掉全部匹配的字元(g為全域性標誌)。

replace()

js中替換字元變數如下:

<script type="text/javascript">

var data2 = "www.baidu.com+all hell/to?you%my#lovely&girl=";

            data2=data2.replace(/\%/g,"%25");
            data2=data2.replace(/\#/g,"%23");
            data2=data2.replace(/\&/g,"%26");
            data2=data2.replace(/\ /g,"%20");
            data2=data2.replace(/\+/g,"%2B");
            data2=data2.replace(/\//g,"%2F");
            data2=data2.replace(/\?/g,"%3F");
            data2=data2.replace(/\=/g,"%3D");

alert(data2);


</script>