jquery+ajax怎样传递xml字符串到后台并提交到数据库

xiongwei_1987 2011-01-08 12:40:12
获取xml的字符串形式,通过ajax提交给后台,然后添加进数据库,我试了发觉像数字汉字行,可是xml的就不行,我感觉这是不能辨识特殊字符比如<,?,/,>这类字符的原因,我给大家看下源代码。大家帮下:
前台:
<script type="text/javascript" src="Script/jquery-1.4.1.min.js"></script>
<script type="text/javascript">
var a="<xml><root><b name='一'>sh111111,sh222222,sh333333,</b><b name='二'>sz111111,sz222222,sz333333,</b></root></xml>";
$(document).ready(function(){
$.ajax({
url:'Data_XW.aspx',
type:'get',
processData: false, // 设为false是为了防止自动转换数据格式
data: "xml="+a,
dataType: "text",
success:function(data){
$("#tableAgentInfo").html(data);
}
});
})
</script>

后台:
protected void Page_Load(object sender, EventArgs e)
{
ADDS();
}
private void ADDS()
{
string a =Request.QueryString["xml"];
Response.ContentType("text/xml");
if (SqlHelper.ExecuteNonQuery("insert into a (name) values ("+a+")",CommandType.Text,null)>0)
{
Response.Write("成功");
Response.End();
}
else
{
Response.Write("失败");
Response.End();
}
}

用数字或汉字就行可显示"成功",添加xml那个var a就什么都不显示。大家看应该怎么添加进数据库
...全文
869 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
孟子E章 2011-01-10
  • 打赏
  • 举报
回复
不是不能识别,后台要加上 ValidateRequest=False
web.config里面加
<pages validateRequest="false" />

或者


<%@ Page validateRequest="false" %>

asp.net4还要加更多的
http://dotnet.aspx.cc/file/requestValidationMode-ValidateRequest-False-does-not-work.aspx


另外,服务器无需Server.HtmlDecode
蚂蚁上树 2011-01-10
  • 打赏
  • 举报
回复
data:{xmlStr:encodeURIComponent(a)}
dataType:"xml"

试试

后台:Server.HtmlDecode
xiongwei_1987 2011-01-08
  • 打赏
  • 举报
回复
我的意思是说encodeURIComponent(a),如何解码?
xiongwei_1987 2011-01-08
  • 打赏
  • 举报
回复
那么后台怎么解析呢?

我用的是asp.net
Mr-Jee 2011-01-08
  • 打赏
  • 举报
回复
data: "xml="+encodeURIComponent(a),
战斗生活 2011-01-08
  • 打赏
  • 举报
回复
哦 还是等高手来吧
smartcatiboy 2011-01-08
  • 打赏
  • 举报
回复
 
var a="<xml><root><b name='一'>sh111111,sh222222,sh333333,</b><b name='二'>sz111111,sz222222,sz333333,</b></root></xml>";
$(document).ready(function(){
$.ajax({
url:'Data_XW.aspx',
type:'get',
//不要关掉processData: false,
//data: "xml="+a,
data:({xml:a}),
dataType: "text",
success:function(data){
$("#tableAgentInfo").html(data);
}
});
})

试试这个
xiongwei_1987 2011-01-08
  • 打赏
  • 举报
回复
cj205,你的方法不行啊。
Mr-Jee 2011-01-08
  • 打赏
  • 举报
回复
Server.HtmlDecode

87,910

社区成员

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

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