解决方案 »

  1.   

    这种有很多项的适合用ajax提交,这样没有必要一次性提交所有的数据——只有几条是真正被修改过的。
    不同的数据项设置不同的id,ajax提交的时候根据所在的条目拼接参数,这样你的Controller也不用修改。
      

  2.   

    感谢回复  ajax提交的时候根据所在的条目拼接参数 不是很明白,在异步提交的时候重新构造表单? 还请指点一二。
      

  3.   

    要分组,好像只有把name设置为不同的值。想知道那个id变成多少了。可以在前台用hidden控件记录上那个值,后台再获取。
      

  4.   

    感谢回复  ajax提交的时候根据所在的条目拼接参数 不是很明白,在异步提交的时候重新构造表单? 还请指点一二。不需要重新构造表单, 一般用jquery的.ajax函数直接调用controller, 例如<script type="text/javascript">
            $(document).ready(function () {
                var serviceURL = '/AjaxTest/FirstAjax';            $.ajax({
                    type: "POST",
                    url: serviceURL,
                    data: param = "",
                    contentType: "application/json; charset=utf-8",
                    dataType: "json",
                    success: successFunc,
                    error: errorFunc
                });            function successFunc(data, status) {     
                    alert(data);
                }            function errorFunc() {
                    alert('error');
                }
            });
        </script>
    data 部分,你要构造你自己的post参数。
      

  5.   

    如果是MVC 学生部分结构应该是这样的
    <tr name="itemtemplate">
     
                        <td><input type="text" name="item[0].StudentName" value="" />学生名称</td>
                        <td><input type="text" name="item[0].Level" value="" />等级</td>
                        <td>
                            <input type="checkbox" name="item[0].Habby" value="1" />吃饭
                            <input type="checkbox" name="item[0].Habby" value="2" />睡觉
                            <input type="checkbox" name="item[0].Habby" value="3" />打豆豆
                        </td>
                    </tr>
    每添加一行index加1,后台实体接收
    public class aa{
      public IList<Student> item{get;set;}
    }
    Action 
    public ActionResult Create(Student student){
        db.Add(student)
    }
      

  6.   

    action错了
    public ActionResult Create(aa a){
        db.Add(a)