AJAX 提交form表单,以及使用C#后台接收
程序员文章站
2022-07-12 20:17:50
...
今天不扯别的,直接进入正题。
前台代码:
HTML:
<form id="addform" action="#">
<input type="text" name="userName" value="李四">
<input type="text" name="age">
<input type="text" name="sex">
<input type="text" name="phone">
<form>
JS:
$.ajax({
url: "../../../ashx/APP/App_sysMenu.ashx",
data: {
formdata: $('#addform').serialize(),
operate: "addStuInfoe"
},
type: "post",
success: function (data) {
console.log(data);
if (data == "true") {
alert("增加成功");
}
else{
alert("增加失败");
}
});
$('#addform').serialize():通过“addform”(Id)获取所在<form>内所有<input>标签的name和value值,并一一对应的存储到 formdate内(如 userName:李四)。注意:通过serialize()方法获取的数据类型是 FormDate。
估计会有人要问了,用<form>传值有什么好处?当你在向后台提交大量数据时,可以通过serialize()方法将<form>内的所有<input>标签内的数据存储到formdate内,并将其传递到后台。
C#后台代码:
string formInfor = CheckResponse.GetResponse("formdata");
string[] formArray=formInfor.Split('=', '&');
Dictionary<string, object> eqpInfor = new Dictionary<string, object>();
for (int i = 0; i < formArray.Length-1; i = i + 2)
{
string nvalue= System.Web.HttpUtility.UrlDecode(formArray[i + 1]);
eqpInfor.Add(formArray[i], nvalue);
}
通过上面的截图大家能看出,C#后台获得数据的格式:ID=&equipnum=2222,这就需要对字符串进行分割,并对应存入Dictionary内;同时汉字被"URL编码"了,那么这就需要System.Web.HttpUtility.UrlDecode()方法对汉字进行解码。
上一篇: python代码实现简单人脸检测
下一篇: 人脸检测
推荐阅读
-
FORM中使用onSubmit="return false"防止表单自动提交,以及submit和button提交表单的区别
-
向后台提交数据:通过form表单提交数据需刷新网页 但通过Ajax提交数据不用刷新网页可通过原生态Ajax或jqueryAjax。Ajax代码部分
-
使用ext2的form提交表单(非AJAX方式)
-
AJAX 提交form表单,以及使用C#后台接收
-
通过Ajax提交form表单方式controller层接收到null值
-
jquery序列化form表单使用ajax提交后处理返回的json数据
-
使用Ajax方法实现Form表单的提交及注意事项
-
jQuery ajax()使用serialize()提交form数据到后台
-
向后台提交数据:通过form表单提交数据需刷新网页 但通过Ajax提交数据不用刷新网页可通过原生态Ajax或jqueryAjax。Ajax代码部分
-
DEDE使用AJAX无刷新提交Form表单,PHP返回结果