使用mvc测试Demo
================view================
@{
ViewBag.Title = "Index";
Layout = null;
}
<h2>ajax请求参数测试</h2>
<script src="~/Scripts/jquery-1.8.2.js"></script>
<div>
<div id="div_Data">
<form id="_form">
<table>
<tbody>
<tr>
<td><label>编号:</label></td>
<td><input type="text" name="ID" value="2" /></td>
</tr>
<tr>
<td><label>名称:</label></td>
<td><input type="text" name="Name" value="测试人员" /></td>
</tr>
<tr>
<td><label>列表:</label></td>
<td><input type="text" name="ListStr" value="测试A,测试B" /></td>
</tr>
<tr>
<td><label>日期:</label></td>
<td><input type="text" name="Date" value="2015-12-17 10:50:30" /></td>
</tr>
</tbody>
</table>
</form>
</div>
<input id="inpBtn" type="button" value="点击事件+get" />
<input id="inpBtn2" type="button" value="点击事件2+get" />
<input id="inpBtn3" type="button" value="点击事件3+post" />
<input id="inpBtn4" type="button" value="点击事件4+post" />
</div>
<script type="text/javascript">
Array.prototype.toJson = function () {
var json = {};
for (var i in this) {
var o = this[i];
if (o.name != '__VIEWSTATE') {
if (typeof (json[o.name]) == 'undefined')
json[o.name] = o.value;
else
json[o.name] += "," + o.value;
}
}
return json;
}
$('#inpBtn').click(function () {
debugger;
var _formObj = $('#_form');
var arr = _formObj.serializeArray();//获取表单数据
for (var i = 0, l = arr.length; i < l;i++){
if (arr[i].name == "ListStr") {
var list = arr[i].value.split(',');
delete arr[i];
for (var j = 0, len = list.length; j < len; j++) {
var item = {
name: "ListStr",
value: list[j]
};
arr.push(item);
}
break;
}
}
$.ajax({
url: '/AjaxRequest/GetTestAjax',
type: 'get',
data: arr,
async: false,
success: function (data, status) {
debugger;
},
error: function (ex) {
debugger;
}
});
});
$('#inpBtn2').click(function () {
debugger;
var _formObj = $('#_form');
var arr = _formObj.serializeArray();
var jsonObj = arr.toJson();
jsonObj.ListStr = jsonObj.ListStr.split(',');
var json = JSON.stringify(jsonObj);//object转字符串
$.ajax({
url: '/AjaxRequest/GetTestAjax2',
type: 'get',
data: { 'json': json },
async: false,
success: function (data) {
debugger;
},
error: function (ex) {
debugger;
}
});
});
$('#inpBtn3').click(function () {
debugger;
var _formObj = $('#_form');
var arr = _formObj.serializeArray();
var jsonObj = arr.toJson();
jsonObj.ListStr = jsonObj.ListStr.split(',');
var aaa = jsonObj.ListStr;
//var list = JSON.stringify(aaa);
//var json = JSON.stringify(jsonObj);//object转字符串
var para = {
test: jsonObj,
list: aaa
};
var paraStr = JSON.stringify(para);
$.ajax({
url: '/AjaxRequest/GetTestAjax3',
type: 'post',
contentType: "application/json",
data: paraStr,
async: false,
success: function (data) {
debugger;
},
error: function (ex) {
debugger;
}
});
});
$('#inpBtn4').click(function () {
debugger;
var _formObj = $('#_form');
var arr = _formObj.serializeArray();
var jsonObj = arr.toJson();
jsonObj.ListStr = jsonObj.ListStr.split(',');
var json = JSON.stringify(jsonObj);//object转字符串
$.ajax({
url: '/AjaxRequest/GetTestAjax4',
type: 'post',
contentType: "application/json",
data: json,
async: false,
success: function (data) {
debugger;
},
error: function (ex) {
debugger;
}
});
});
</script>
===============controller===============
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; using System.Web.Script.Serialization; namespace ContentReplace.Controllers { public class AjaxRequestController : Controller { // // GET: /AjaxRequest/ public ActionResult Index() { return View(); } public JsonResult GetTestAjax(TestClass test) { var data = ""; return Json(data, JsonRequestBehavior.AllowGet); } public JsonResult GetTestAjax2() { var json = Request["json"]; var jss = new JavaScriptSerializer(); var arr = jss.Deserialize<TestClass>(json); var data = ""; return Json(data, JsonRequestBehavior.AllowGet); } [HttpPost] public JsonResult GetTestAjax3(TestClass test,List<string> list) { var data = ""; return Json(data, JsonRequestBehavior.AllowGet); } [HttpPost] public JsonResult GetTestAjax4(TestClass test) { var data = ""; return Json(data, JsonRequestBehavior.AllowGet); } } public class TestClass { public int ID { get; set; } public string Name { get; set; } public DateTime Date { get; set; } public List<string> ListStr { get; set; } } }
转载于:https://blog.51cto.com/11028335/1726772