日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

ajax post 空格变加号,Ajax Post数据加号变空格详解

發布時間:2025/3/21 52 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ajax post 空格变加号,Ajax Post数据加号变空格详解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

我在頁面上得到BASE64編碼想通過AJAX方式與后臺交互,但是后臺得到的數據所有的+號都變成了空格,查了一下。

采用Ajax傳遞數據時,通常會將數據整理為data="var1=abc&var2=def"。而當數據中存在加號(+)或是連接符(&)時,服務器端接收數據時會有部分數據丟失現象。

分析一下Ajax傳遞數據的格式與Javascript的語法不難發現:

1. "+"號:JavaScript解析為字符串連接符,所以服務器端接收數據時"+"會丟失。

2. "&":JavaScript解析為變量連接符,所以服務器端接收數據時&符號以后的數據都會丟失。

解決辦法也相當簡單,只需要為+與&符號編碼即可:

//使用post方式發送

function doRequestUsingPOST()

{

createXMLHttpRequest();

var retCode = document.getElementById("retCode").value;

var data = document.getElementById("data").value;

data = data.replace(//+/g, "%2B");

data = data.replace(//&/g, "%26");?? var queryString = "retCode="+retCode+"&data="+data;

var url="backSealServlet" ;?//使用URL向后臺傳值

//xmlHttp.open("POST",url,true);

xmlHttp.open("POST",url,false);

xmlHttp.onreadystatechange = handleStateChange;

xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");

xmlHttp.send(queryString);

//alert("結束? "+retCode);

}

總結

以上是生活随笔為你收集整理的ajax post 空格变加号,Ajax Post数据加号变空格详解的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。