欧美阿v视频在线大全_亚洲欧美中文日韩V在线观看_www性欧美日韩欧美91_亚洲欧美日韩久久精品

主頁 > 知識庫 > Ajax傳輸中文亂碼問題的解決辦法

Ajax傳輸中文亂碼問題的解決辦法

熱門標簽:云呼外撥網絡電話系統 硅語電話機器人公司 越南河內地圖標注 超級大富翁地圖標注 騰訊地圖標注位置能用多久 個人怎樣在百度地圖標注地名 地圖標注項目怎么樣 機器人電銷騙局揭秘 ai機器人電銷資源

AJAX簡介

AJAX = Asynchronous JavaScript and XML(異步的 JavaScript 和 XML)。

AJAX 不是新的編程語言,而是一種使用現有標準的新方法。

AJAX 是與服務器交換數據并更新部分網頁的藝術,在不重新加載整個頁面的情況下。

ajax傳輸中文亂碼問題描述:

  我是在一個jsp頁面有一個保存按鈕,點擊時會觸發saveForm()的js函數,在saveForm()函數里經過校驗后,會通過ajax發送數據請求,這樣就不用通過提交表單來傳輸數據了,ajax估計就是這樣的好處吧,目前對ajax還不太熟悉。

ajax傳輸亂碼時的代碼:

function saveForm(){
if(document.theformadd.onsubmit()){
disableAllBtn(true);
j$.ajax({
type:"get",
url:"add_form_do.jsp",
data:{
problem_id : j$("#problem_id").val(),
product_id : "%=product_id%>",
productId : j$("#productId").val(),
depart_id : j$("#depart_id").val(),
fk_busi_id : j$("#fk_busi_id").val(),
fk_type : j$("#fk_type").val(),
fk_source : j$("#fk_source").val(),
fk_info : j$("#fk_info").val(),
fk_name : j$("#fk_name").val(),
fk_bank_name : j$("#fk_bank_name").val(),
fk_bank_acct : j$("#fk_bank_acct").val(),
sk_name : j$("#sk_name").val(),
sk_bank_name : j$("#sk_bank_name").val(),
sk_bank_acct : j$("#sk_bank_acct").val(),
fk_money : j$("#fk_money").val(),
fk_summary : j$("#fk_summary").val(),
fk_date : j$("#fk_date").val(),
input_man : "%=input_operatorCode%>"
},
success:function(ret){
if(ret == 1) {
sl_alert("保存成功!");
}else{
sl_alert(ret);
}
window.returnValue=true;
window.close();
}
});
}
}

然后我們在add_form_do.jsp中獲取數據

%@ page contentType="text/html; charset=GBK" import="java.math.*,com.enfo.intrust.intrust.vo.*,java.io.*, com.enfo.intrust.web.*,java.util.*,com.enfo.intrust.dao.*,com.enfo.intrust.intrust.*,com.enfo.intrust.tools.*,com.enfo.intrust.project.*" %>
script type="text/javascript" src="%=request.getContextPath()%>/ext2.0/ext-base.js">/script>
script type="text/javascript" src="%=request.getContextPath()%>/ext2.0/ext-all.js">/script>
%@ include file="/includes/operator.inc" %>
%
try{
product_id = Utility.parseInt(Utility.trimNull(request.getParameter("product_id")),product_id);
UnpostwarrantLocal local = EJBFactory.getUnpostwarrant();
Integer problem_id = Utility.parseInt(request.getParameter("problem_id"),new Integer(0));
Integer depart_id = Utility.parseInt(request.getParameter("depart_id"),new Integer(0)); //部門
Integer productId = Utility.parseInt(Utility.trimNull(request.getParameter("productId")),product_id);
String fk_busi_id = Utility.trimNull(request.getParameter("fk_busi_id")); //字典1206 費用
String fk_type = Utility.trimNull(request.getParameter("fk_type")); //付款方式 2103
String fk_source = Utility.trimNull(request.getParameter("fk_source")); //付款依據 2104
String fk_info = Utility.trimNull(request.getParameter("fk_info")); //票據號碼
String fk_name = Utility.trimNull(request.getParameter("fk_name")); //付款單位
String fk_bank_name = Utility.trimNull(request.getParameter("fk_bank_name")); //付款銀行名稱
String fk_bank_acct = Utility.trimNull(request.getParameter("fk_bank_acct")); //付款銀行賬號
String sk_name = Utility.trimNull(request.getParameter("sk_name")); //收款單位
String sk_bank_name = Utility.trimNull(request.getParameter("sk_bank_name")); //收款銀行名稱
String sk_bank_acct = Utility.trimNull(request.getParameter("sk_bank_acct")); //收款銀行賬號
BigDecimal fk_money = Utility.parseDecimal(Utility.trimNull(request.getParameter("fk_money")).replaceAll(",",""),new BigDecimal(0)); //金額
String fk_summary = Utility.trimNull(request.getParameter("fk_summary")); //備注
Integer fk_date = Utility.parseInt(request.getParameter("fk_date"),new Integer(Utility.getCurrentDate())); //要求付款日期
local.setProblem_id(problem_id);
//local.setProduct_id(product_id);
local.setProduct_id(productId);
local.setDepart_id(depart_id);
local.setFk_busi_id(fk_busi_id);
local.setFk_type(fk_type);
local.setFk_source(fk_source);
local.setFk_info(fk_info);
local.setFk_name(fk_name);
local.setFk_bank_name(fk_bank_name);
local.setFk_bank_acct(fk_bank_acct);
local.setSk_name(sk_name);
local.setSk_bank_name(sk_bank_name);
local.setSk_bank_acct(sk_bank_acct);
local.setFk_money(fk_money);
local.setFk_summary(fk_summary);
local.setFk_date(fk_date);
local.setInput_man(input_operatorCode);
local.addFinacialcardInfoGuotou();
out.clear();
response.getWriter().write("1");
}catch(Exception e){
out.clear();
response.getWriter().write(e.getMessage());
}
%>

這時候我接受到的數據會是中文亂碼,不管傳輸方式是get,還是post都會中文亂碼

解決方案:

  我們可以在傳輸時對數據重新編碼,然后在接受數據時重新解碼。其實亂碼的問題就是編碼格式沖突,導致解碼的密鑰對之前格式解析錯誤,導致亂碼。在傳輸時,在需要傳輸中文數據前面加一個encodeURI()編碼,例如:encodeURI(j$("#fk_info").val());在接受需要中文數據的前面加一個java.net.URLDecoder.decode(value, "UTF-8"),例如
String fk_bank_name = Utility.trimNull(request.getParameter("fk_bank_name")); String trans = java.net.URLDecoder.decode(fk_bank_name, "UTF-8");
具體修改后的全部代碼如下:

修復后ajax傳輸的代碼:

function saveForm(){
if(document.theformadd.onsubmit()){
disableAllBtn(true);
j$.ajax({
type:"get",
url:"add_form_do.jsp",
data:{
problem_id : j$("#problem_id").val(),
product_id : "%=product_id%>",
productId : j$("#productId").val(),
depart_id : j$("#depart_id").val(),
fk_busi_id : j$("#fk_busi_id").val(),
fk_type : j$("#fk_type").val(),
fk_source : j$("#fk_source").val(),
fk_info : encodeURI(j$("#fk_info").val()),
fk_name : encodeURI(j$("#fk_name").val()),
fk_bank_name : encodeURI(j$("#fk_bank_name").val()),
fk_bank_acct : encodeURI(j$("#fk_bank_acct").val()),
sk_name : encodeURI(j$("#sk_name").val()),
sk_bank_name : encodeURI(j$("#sk_bank_name").val()),
sk_bank_acct : encodeURI(j$("#sk_bank_acct").val()),
fk_money : j$("#fk_money").val(),
fk_summary : encodeURI(j$("#fk_summary").val()),
fk_date : j$("#fk_date").val(),
input_man : "%=input_operatorCode%>"
},
success:function(ret){
if(ret == 1) {
sl_alert("保存成功!");
}else{
sl_alert(ret);
}
window.returnValue=true;
window.close();
}
});
}
}

修復后add_form_do.jsp中獲取數據:

%@ page contentType="text/html; charset=GBK" import="java.math.*,com.enfo.intrust.intrust.vo.*,java.io.*, com.enfo.intrust.web.*,java.util.*,com.enfo.intrust.dao.*,com.enfo.intrust.intrust.*,com.enfo.intrust.tools.*,com.enfo.intrust.project.*" %>
script type="text/javascript" src="%=request.getContextPath()%>/ext2.0/ext-base.js">/script>
script type="text/javascript" src="%=request.getContextPath()%>/ext2.0/ext-all.js">/script>
%@ include file="/includes/operator.inc" %>
%
try{
product_id = Utility.parseInt(Utility.trimNull(request.getParameter("product_id")),product_id);
UnpostwarrantLocal local = EJBFactory.getUnpostwarrant();
Integer problem_id = Utility.parseInt(request.getParameter("problem_id"),new Integer(0));
Integer depart_id = Utility.parseInt(request.getParameter("depart_id"),new Integer(0)); //部門
Integer productId = Utility.parseInt(Utility.trimNull(request.getParameter("productId")),product_id);
String fk_busi_id = Utility.trimNull(request.getParameter("fk_busi_id")); //字典1206 費用
String fk_type = Utility.trimNull(request.getParameter("fk_type")); //付款方式 2103
String fk_source = Utility.trimNull(request.getParameter("fk_source")); //付款依據 2104
String fk_info = Utility.trimNull(request.getParameter("fk_info")); //票據號碼
String fk_name = Utility.trimNull(request.getParameter("fk_name")); //付款單位
String fk_bank_name = Utility.trimNull(request.getParameter("fk_bank_name")); //付款銀行名稱
String fk_bank_acct = Utility.trimNull(request.getParameter("fk_bank_acct")); //付款銀行賬號
String sk_name = Utility.trimNull(request.getParameter("sk_name")); //收款單位
String sk_bank_name = Utility.trimNull(request.getParameter("sk_bank_name")); //收款銀行名稱
String sk_bank_acct = Utility.trimNull(request.getParameter("sk_bank_acct")); //收款銀行賬號
BigDecimal fk_money = Utility.parseDecimal(Utility.trimNull(request.getParameter("fk_money")).replaceAll(",",""),new BigDecimal(0)); //金額
String fk_summary = Utility.trimNull(request.getParameter("fk_summary")); //備注
Integer fk_date = Utility.parseInt(request.getParameter("fk_date"),new Integer(Utility.getCurrentDate())); //要求付款日期
local.setProblem_id(problem_id);
//local.setProduct_id(product_id);
local.setProduct_id(productId);
local.setDepart_id(depart_id);
local.setFk_busi_id(fk_busi_id);
local.setFk_type(fk_type);
local.setFk_source(fk_source);
local.setFk_info(java.net.URLDecoder.decode(fk_info, "UTF-8"));
local.setFk_name(java.net.URLDecoder.decode(fk_name, "UTF-8"));
local.setFk_bank_name(java.net.URLDecoder.decode(fk_bank_name, "UTF-8"));
local.setFk_bank_acct(java.net.URLDecoder.decode(fk_bank_acct, "UTF-8"));
local.setSk_name(java.net.URLDecoder.decode(sk_name, "UTF-8"));
local.setSk_bank_name(java.net.URLDecoder.decode(sk_bank_name, "UTF-8"));
local.setSk_bank_acct(java.net.URLDecoder.decode(sk_bank_acct, "UTF-8"));
local.setFk_money(fk_money);
local.setFk_summary(java.net.URLDecoder.decode(fk_summary, "UTF-8"));
local.setFk_date(fk_date);
local.setInput_man(input_operatorCode);
local.addFinacialcardInfoGuotou();
out.clear();
response.getWriter().write("1");
}catch(Exception e){
out.clear();
response.getWriter().write(e.getMessage());
}
%>

注意事項:

  如果是接受數據不是jsp頁面,而是Java類的時候,只需要URLDecoder.decode(value, "UTF-8");來解碼,然后導入相應的包。還有傳輸時可能需要兩次編碼encodeURI(encodeURI(j$("#fk_info").val())),具體原因是我們通過request.getParameter()來獲取數據時就會進行一次解碼操作,解碼時不變。

以上所述是小編給大家介紹的Ajax傳輸中文亂碼問題的解決辦法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!

您可能感興趣的文章:
  • ajax請求亂碼的解決方法(中文亂碼)
  • jquery.ajax的url中傳遞中文亂碼問題的解決方法
  • jsp中 ajax的get請求的中文亂碼問題的解決方法
  • 解決ajax+php中文亂碼的方法詳解
  • JQuery AJAX 中文亂碼問題解決
  • ajax中文亂碼問題解決方案
  • jquery的ajax()函數傳值中文亂碼解決方法介紹
  • JQuery中使用ajax傳輸超大數據的解決方法
  • AJAX在GB2312的中文編碼傳輸 AJAX特殊字符編碼正確方法

標簽:邢臺 舟山 遼源 鄭州 內蒙古 海南 林芝 洛陽

巨人網絡通訊聲明:本文標題《Ajax傳輸中文亂碼問題的解決辦法》,本文關鍵詞  Ajax,傳輸,中文,亂碼,問,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Ajax傳輸中文亂碼問題的解決辦法》相關的同類信息!
  • 本頁收集關于Ajax傳輸中文亂碼問題的解決辦法的相關信息資訊供網民參考!
  • 推薦文章
    欧美阿v视频在线大全_亚洲欧美中文日韩V在线观看_www性欧美日韩欧美91_亚洲欧美日韩久久精品
  • <rt id="w000q"><acronym id="w000q"></acronym></rt>
  • <abbr id="w000q"></abbr>
    <rt id="w000q"></rt>
    国产亚洲综合在线| 免费观看日韩电影| 成人午夜在线播放| 国产探花视频在线| 久久久www成人免费毛片麻豆| 日韩成人免费电影| 久久精品aⅴ无码中文字字幕重口| 91福利资源站| 亚洲伦理在线免费看| 成人av电影观看| 色综合色综合色综合色综合色综合| 国产精品污网站| 国产成人av电影| 日本黄色片免费观看| 国产精品免费久久久久| 成人午夜又粗又硬又大| 国产suv一区二区三区| 椎名由奈av一区二区三区| 成人福利视频网站| 在线免费视频一区二区| 亚洲综合图片区| 男人网站在线观看| 日韩一级欧美一级| 精品午夜久久福利影院| 五月婷婷综合激情网| 国产精品久久久爽爽爽麻豆色哟哟| 丁香婷婷综合网| 91久久一区二区| 亚洲福利一二三区| 人妻无码一区二区三区| 久久综合色之久久综合| 国产成人免费xxxxxxxx| 色天使色偷偷av一区二区| 一区二区三区在线观看视频| 国产综合内射日韩久| 日韩欧美视频一区| 国产精品一区二区在线观看不卡| 蜜臀久久精品久久久用户群体| 亚洲天堂a在线| 最新中文字幕日本| 欧美v国产在线一区二区三区| 国产美女一区二区| 色视频成人在线观看免| 亚洲超碰97人人做人人爱| 成人乱码一区二区三区av| 国产欧美精品一区二区色综合| 北条麻妃国产九九精品视频| 欧美日韩国产高清一区二区三区| 美国十次综合导航| tube国产麻豆| 午夜在线电影亚洲一区| 五月婷婷婷婷婷| 一区二区欧美精品| 日韩乱码人妻无码中文字幕久久| 中文幕一区二区三区久久蜜桃| 91麻豆自制传媒国产之光| 日韩欧美在线一区二区三区| 国产激情视频一区二区在线观看 | 国产一区二区剧情av在线| 成人免费视频网站入口::| 舔着乳尖日韩一区| 成年人网站在线观看视频| 亚洲国产日韩在线一区模特| 久久精品三级视频| 亚洲欧美一区二区三区极速播放| 特大黑人巨人吊xxxx| 中文字幕国产一区二区| 波多野结衣办公室双飞| 亚洲国产精品精华液2区45| 久久久久久久久久久久国产精品| 久久久影院官网| 四虎国产精品免费| 国产亚洲va综合人人澡精品| av在线天堂网| 欧美国产视频在线| 制服丝袜在线第一页| 国产精品天干天干在观线| 免费a v网站| 亚洲三级电影网站| 免费看污片的网站| 亚洲第一在线综合网站| 99热这里只有精品4| 蜜桃视频在线一区| 欧美午夜精品电影| 国产91在线看| 欧美v日韩v国产v| 亚洲麻豆一区二区三区| 国产精品视频一二三区| 国产全是老熟女太爽了| 亚洲曰韩产成在线| 日本青青草视频| 国产真实乱偷精品视频免| 91精品国产欧美日韩| 99久久夜色精品国产网站| 久久久www免费人成精品| 三级黄色片网站| 亚洲妇女屁股眼交7| 色猫猫国产区一区二在线视频| 久久精品国产精品亚洲红杏| 欧美精品国产精品| 91视频精品在这里| 国产精品久久久久久久浪潮网站 | 久久九九99视频| 亚洲男人在线天堂| 一区二区三区美女| 国产盗摄x88av| 国产成人小视频| 欧美精品一区二区三区四区| 水蜜桃av无码| 亚洲成人免费观看| 欧美在线不卡视频| 92国产精品观看| 自拍偷自拍亚洲精品播放| 日本黄色免费片| 国产揄拍国内精品对白| 欧美精品一区二区三区蜜桃| 日韩一级二级三级| 国产成人精品一区二区在线小狼| 国产午夜亚洲精品羞羞网站| 国产精品一区二区在线播放| 精品99一区二区| 在线 丝袜 欧美 日韩 制服| 午夜精品久久久久久久久久| 欧美日高清视频| 欧美图片自拍偷拍| 亚洲资源在线观看| 欧美日韩精品二区第二页| 一区二区三区人妻| 亚洲自拍偷拍网站| 欧美日本视频在线| 91精品啪在线观看国产| 亚洲成人免费视频| 欧美一二区视频| 97超碰在线免费观看| 麻豆成人av在线| 2020国产精品自拍| 91视频免费看片| 国产99久久精品| 亚洲精品自拍动漫在线| 欧美少妇性性性| 在线观看亚洲免费视频| 日日夜夜精品视频天天综合网| 这里是久久伊人| 国产成人无码一区二区在线观看| 蜜桃视频一区二区三区| 国产亚洲综合色| 亚洲熟女www一区二区三区| 91视频观看免费| 亚洲超碰精品一区二区| 精品剧情v国产在线观看在线| 日本一级免费视频| 国产精品羞羞答答xxdd| 亚洲欧美在线高清| 欧美视频一区二区三区四区| 少妇激情一区二区三区视频| 蜜臀久久99精品久久久画质超高清| 精品国产一区二区三区忘忧草| 蜜臀久久99精品久久久久久| 欧美一卡2卡三卡4卡5免费| 在线看国产一区| 少妇av片在线观看| 99re这里只有精品视频首页| 日韩在线一区二区三区| 国产精品久久久久毛片软件| 色又黄又爽网站www久久| 91女神在线视频| 日产国产欧美视频一区精品| 久久先锋资源网| 色94色欧美sute亚洲线路二| 女同性恋一区二区三区| 国产在线不卡一区| 综合激情成人伊人| 日韩美一区二区三区| 国产免费美女视频| 91免费观看在线| 日韩av中文在线观看| 亚洲国产成人在线| 欧美日韩国产乱码电影| 人妻熟人中文字幕一区二区| 91免费观看视频在线| 久久99精品久久久久| 国产精品全国免费观看高清 | 国内精品嫩模私拍在线| 亚洲视频香蕉人妖| 日韩视频一区在线观看| 欧美三级黄色大片| 国产成人av无码精品| 丁香婷婷综合五月| 亚州成人在线电影| 亚洲国产激情av| 欧美一区二区大片| www.超碰在线观看| 国精产品一区一区三区免费视频| 粉嫩高潮美女一区二区三区| 午夜伦欧美伦电影理论片| 中文字幕av资源一区| 9191成人精品久久| 97成人资源站| 在线观看国产精品一区| 日韩欧美国产电影|