XMLHTTP发送post时候截断字符

fashchina 2006-04-04 11:47:05
部分代码

var http_request=createXmlHttp();
var url="/flux/servlet/QuestionnaireAction?action=default";
http_request.onreadystatechange =dealSave;
var txt=document.theForm.jsTxt.value;
var filename=document.theForm.filename.value;
var parame="jsTxt="+txt+"&filename="+filename;
http_request.open('POST', url, true);
http_request.setrequestheader("content-length",txt.length);
http_request.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
http_request.send(parame);

问题:
txt里面是包含html代码的
当然也包含 空格

现在问题:在QuestionnaireAction里面,通过
String fileTxt=request.getParameter("jsTxt")
获得的内容,就在&截断掉,

求:解决方俺,实在不行,就用表单直接处理了

现在已经用了的方法:
对txt进行处理:
var txt=document.theForm.jsTxt.value;
第一:txt=encodeURI(txt);
问题依旧
第二:txt=escape(txt);
问题依旧

...全文
549 15 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
randaliang 2006-05-20
  • 打赏
  • 举报
回复
我估计你发的是中文,escape(encodeURIComponent(strkeyword))就可以了,不过是得用java.net.URLDecoder 才能生成你需要的正确文字
huangjinyin 2006-05-19
  • 打赏
  • 举报
回复
把&替换成"%___%"到服务器端再换回来,你可以试一下
kylixsales 2006-05-18
  • 打赏
  • 举报
回复
把源文件的编码格式改为UTF-8然后保存就可以了.
deninghe 2006-05-14
  • 打赏
  • 举报
回复
mark
indexroot 2006-05-13
  • 打赏
  • 举报
回复
content-length头不用发送
加上timestamp避免缓存
var parame="jsTxt="+txt+"&filename="+filename+"×tamp="+new Date().getTime();
把客户端的编码用UTF-8

服务器端设
request.setCharacterEncoding("UTF-8");
九型思维 2006-05-12
  • 打赏
  • 举报
回复
.net2005、asp.net2.0、flash8.0、sql2005
web2.0
【Pin】web2.0工程师,.net工程师,技术经理,flash编程&设计师,3D美工等,长期有效
如有意向,请发简历至datehr@126.com,详情请见
http://iten.126.com 或
http://blog.csdn.net/datehr/
cansum396 2006-04-18
  • 打赏
  • 举报
回复
make
weki 2006-04-18
  • 打赏
  • 举报
回复
to fason:能不能给一个example :)
GaoXX 2006-04-15
  • 打赏
  • 举报
回复
顶一下
fason 2006-04-15
  • 打赏
  • 举报
回复
建议post xmldocument
创造奇迹9999 2006-04-05
  • 打赏
  • 举报
回复
用escape在发送的时候进行编码,而后再用UNescape在接收后进行解码
cvpc 2006-04-04
  • 打赏
  • 举报
回复
http://www.x2blog.cn/supNate/?tid=1980
awaysrain 2006-04-04
  • 打赏
  • 举报
回复
对html的内容进行编码吧
Meteorlet 2006-04-04
  • 打赏
  • 举报
回复
http_request.setrequestheader("content-length",txt.length);

content-length是所有数据的长度,不是一个字段的长度,改成 parame.length
cvpc 2006-04-04
  • 打赏
  • 举报
回复
escape('&');// 返回 '%26'

52,792

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧