国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

js中傳遞特殊字符(+,&)的方法

2019-11-20 21:14:30
字體:
來源:轉載
供稿:網友

背景:

今天在做一個任務時,用Jquery的Ajax傳遞一長串字符時,在后臺的驗證一直不成功,糾結時我了(那個字符串是隨機生成的,特長)。查了一上午,原來是我生成的字符串中有+號,而在js傳遞的時候,會理解為是連接字符用的,到了后臺就將+號自動變為空格了,所以后臺的字符串和前臺生成的已經不一樣了。

原因:

js后自動解析特殊字符,如+號為連接符,解析為空格,&為變量連接符,服務器端接受數據時&以后的數據不顯示等等。

解決辦法:

1、將字符放到form中,然后用js提交form表單到服務器。

2、將字符中的特殊字符替換成十六進制的字符,一些特殊字符與十六進制的對應關系:

 

+空格/?%&=#
%2B%20%2F%3F%25%26&3D%23

str = str.replace(//+/g,"%2B"); 將+號替換為十六進制 

3、最簡單的一種,使用encodeURIComponent()函數。  

  該方法不會對 ASCII 字母和數字進行編碼,也不會對這些 ASCII 標點符號進行編碼: - _ . ! ~ * ' ( ) 。

其他字符(比如 :;/?:@&=+$,# 這些用于分隔 URI 組件的標點符號),都是由一個或多個十六進制的轉義序列替換的。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 上饶市| 石阡县| 雅江县| 冕宁县| 西宁市| 衡阳县| 泽州县| 龙游县| 嘉兴市| 革吉县| 徐汇区| 深圳市| 芦山县| 罗甸县| 哈密市| 盖州市| 兴隆县| 东丰县| 台安县| 交口县| 遂昌县| 当雄县| 临沂市| 郯城县| 江门市| 元谋县| 宣威市| 苍溪县| 尚义县| 新巴尔虎左旗| 白山市| 抚远县| 清原| 耿马| 乾安县| 宜章县| 天气| 长汀县| 皋兰县| 林西县| 清河县|