关于 Ajax 使用中中文字符编码问题

前台javascript


function addQuestion(){
var questionContent = $(”questionContent”).value;
if (questionContent == null || questionContent == “”) {
$(”questionTip”).innerHTML = “你提交的问题不能为空,请重新输入!”;
return;
}

var url = “ajax/addQuestion.action?content=” + questionContent;
url = encodeURI(url);
url = encodeURI(url);
new Ajax.Request(url, {
method: ‘post’,
onSuccess: function(transport){
var result = transport.responseText.evalJSON();
$(”questionTip”).innerHTML = result.tip;
GetQList(2, 1); //刷新我的问题列表
},
onCreate: function(){
$(”questionTip”).innerHTML = $(”loadingSubQ”).innerHTML;
$(”askQForm”).disable();
},
onFailure: function(){
$(”questionTip”).innerHTML = “问题提交失败”;
$(”askQForm”).enable();
}
});
}


使用的是ProtoType1.6,上面的代码很明白,就不多说了。注意encodeURI俩次。

后台获取到content后。

String dContent = java.net.URLDecoder.decode(getContent(),”utf-8″);


即可。

还有一种最简单方式:
将提交内容放在form中,使用ProtoType的Form.serialize(),不存在编码问题,ProtoType已经帮你做好了。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值