url 傳遞引數(特殊字元) 解決方法
阿新 • • 發佈:2018-11-28
在做網頁的時候,偶爾會遇到url被截斷的情況,一般是出現在有引數的url中,比如www.baidu.com?a=1&b=2,有時候就會出現url只傳遞了www.baidu.com?a=1後邊的url被截斷了,出現這種情況一般最有效的解決方案是把&符號用%26替換,這樣www.baidu.com?a=1&b=2就變成了www.baidu.com?a=1%26b=2這是一種URL編碼的方式。
- 以下是url中可能用到的特殊字元及在url中的經過編碼後的值:
字元 | 特殊字元含義 | url編碼 |
---|---|---|
# |
用來標誌特定的文件位置 | % 23 |
% |
對特殊字元進行編碼 | % 25 |
& |
分隔不同的變數值對 | % 26 |
+ |
在變數值中表示空格 | % 2B |
/ | 表示目錄路徑 | % 2F |
\ | 表示目錄路徑 | % 5C |
= | 用來連線鍵和值 | %3D |
? | 表示查詢字串的開始 | % 3F |
空格 | 空格 | % 20 |
. | 句號 | % 2E |
: |
冒號 | % 3A |
- 解決的方法:
replace() 方法如果直接用str.replace(“-“,”!”) 只會替換第一個匹配的字元.
而str.replace(/-/g,”!”)則可以替換掉全部匹配的字元(g為全域性標誌)。