【发布时间】:2009-04-17 12:40:20
【问题描述】:
我知道这个问题之前已经提到过,例如这里:
How to post an array of complex objects with JSON, jQuery to ASP.NET MVC Controller?
但解决方案似乎不适合我的问题。
这是我的 HTML。行数可变:
<table id="workPlanTable">
<tr>
<th>
Begin
</th>
<th>
End
</th>
</tr>
<tr itemId="1">
<td><input class="begin" id="begin_1" name="begin_1" type="text" value="5:30" /></td>
<td><input class="end" id="end_1" name="end_1" type="text" value="11:30" /></td>
</tr>
<tr itemId="3">
<td><input class="begin" id="begin_3" name="begin_3" type="text" value="5:30" /></td>
<td><input class="end" id="end_3" name="end_3" type="text" value="7:30" /></td>
</tr>
</table>
JS 构建一个对象数组并将它们发送到一个控制方法:
<script type="text/javascript">
$(function() {
submitForm = function() {
var items = new Array();
$("#workPlanTable tr").each(function(i) {
var end = $(this).find(".end").val();
var begin = $(this).find(".begin").val();
var item = {
"Begin": begin,
"End": end
};
items.push(item);
});
var postData = {
myItems: items
};
$.ajax({
url: '~/WorkPlan/AjaxUpdate',
type: 'POST',
dataType: 'json',
data: postData,
contentType: 'application/json; charset=utf-8',
success: function(result) {
alert(result.Result);
}
});
}
})
</script>
每一行代表一个 WorkPlanItem。
我的目标是将它们全部发布到我的控制器以更新它们。
我似乎无法弄清楚如何在我的控制器方法 (AjaxUpdate) 中访问该数组。
【问题讨论】:
标签: asp.net-mvc json jquery