警告: Parameters: Character decoding failed. Parameter skipped. java.io.CharConversionException: isHex

警告: Parameters: Character decoding failed. Parameter skipped.

java.io.CharConversionException: isHexDigit

用Ajax获取Kindeditor的textarea的值的时候要用name标记,因为这样不会出现JS浏览器兼容的问题

例如:

<span style="font-size:18px;">var v_zsContext=$("TEXTAREA[name='zsContext']").val();</span>

那么问题来啦?

利用Ajax向服务器传送大量数据有可能传不完整

例如:

$.getJSON(resUrl, {
			profe:chk_value,
			email:v_email,
			oldPwd:old_pwd,
			newPwd1:new_pwd1
				},function(data){
			 if(data==0){
				 $('.info').eq(2).children().last().children("span").text('旧密码不正确,请重新输入!'); 
			 }
			 if(data==1){
				alert('修改成功');
			 }
			 if(data==0){
				alert('修改失败');
			 }
			});

当变量的值大的时候传不完整,这是怎么办?别担心有办法!!

$.ajax({
			   type:"POST",
			   url:speUrl,
			   data:"speReskey="+v_speReskey+"&speTitle="+v_speTitle+"&zsTitle="+v_zsTitle+"&zsContext="+v_zsContext+"&speType="+v_speType,
			   success: function(msg){
				   var data=JSON.parse(msg); 
				   if(data.type==0){
						 alert("保存成功!");
						 $("#speReskey").val(data.speReskey);
					 }else{
						 alert("保存失败!");
					 }
			   }
			});

注意type一定要用POST,因为GET有字节限制,但是用$.ajax返回过来的时msg是String类型,所以要把String转化为Json类型

例如:

var data=JSON.parse(msg); 
				   if(data.type==0){
						 alert("保存成功!");
						 $("#speReskey").val(data.speReskey);
					 }else{
						 alert("保存失败!");
					 }

还有一点特别注意:

v_zsContext=encodeURI(v_zsContext);
v_zsContext=encodeURI(v_zsContext);		
数据要经过两次的转换,一次不行,但是此方法有缺陷,对于编辑器插入的表格不能完整的传入数据库,所以采用:

v_zsContext=encodeURIComponent(v_zsContext);
v_zsContext=encodeURIComponent(v_zsContext);
这样就可以了,但是后台得到的都是%3Ctable%20style%3D%22width%3A100%25%3B%22%20bo这样的字符,如果想存入数据库的数据为能看懂的汉字,需要在后台处理一下:

String zsContext=request.getParameter("zsContext");
zsContext = java.net.URLDecoder.decode(zsContext,"UTF-8"); 
OK,打完收工!





  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值