jquery ajax发送数据

时间:2014-04-26 17:26:50

标签: c# jquery ajax

contentType: "text/html; charset=utf-8",
url:"secret.aspx?plu="+$("#Text1").val()+"&gh="+$("#TextBox1").val()+"&sid="+$("#TextBox2").val(),
processData: false,
dataType: "html",
 success: function(data)

上述语法是否正确发送数据 收到以下代码

string sid=Request.QueryString["sid"];
string id = Request.QueryString["plu"];
int ide =Convert.ToInt32(Request.QueryString["gh"]);
Response.write(sid);
Response.end();

还是有其他方法可以实现相同的

2 个答案:

答案 0 :(得分:1)

该请求的唯一问题是,如果输入值中有任何特殊字符,它将会中断。

解决方法是传递数据对象:

type:"GET",
url:"secret.aspx",
data: {
    plu : $("#Text1").val(),
    gh : $("#TextBox1").val(),
    sid : $("#TextBox2").val()
},
dataType: "html",

这会对特殊字符进行编码,以避免破坏键/值格式。或者,您可以将它们保留在url中,但将其分别包含在encodeURIComponent()中,这会产生相同的效果。

答案 1 :(得分:0)

您需要将表单数据序列化为ajax方法的“data”选项。另外,如果要使用查询字符串,请将请求类型指定为GET。

type: 'GET'
contentType: "text/html; charset=utf-8",
url:'secret.aspx',
processData: false,
dataType: "html",
data: $('#myForm').serialize(),