带有MVC4控制器的JQuery附加网格

带有MVC4控制器的JQuery附加网格,jquery,asp.net-mvc-4,controller,grid,Jquery,Asp.net Mvc 4,Controller,Grid,我们如何在VisualStudioMVC4解决方案中集成AppendGrid控件 问题是我不能使用@Html.EditorFor,因为appendgrid控件是自动构造的 在以下尝试中,筛选器始终为空 我想可能有两种解决方案 设法将包含网格的序列化字符串传递给控制器(我尝试过但还没有成功) 或 使用标准Html.BeginForm@Html.EditorFor技术 [HttpPost] 公共操作结果新筛选器(字符串筛选器) { 返回操作(“索引”); } @Models.FilterModel

我们如何在VisualStudioMVC4解决方案中集成AppendGrid控件

问题是我不能使用@Html.EditorFor,因为appendgrid控件是自动构造的

在以下尝试中,筛选器始终为空

我想可能有两种解决方案

  • 设法将包含网格的序列化字符串传递给控制器(我尝试过但还没有成功) 或
  • 使用标准Html.BeginForm@Html.EditorFor技术

  • [HttpPost]
    公共操作结果新筛选器(字符串筛选器)
    {
    返回操作(“索引”);
    }
    @Models.FilterModel
    @{
    ViewBag.Title=“新过滤器”;
    }
    新过滤器
    $(文档).ready(函数(){
    //初始化附加网格
    $('tblAppendGrid').appendGrid({
    标题:“过滤器集合”,
    初始行数:4,
    栏目:[
    {name:'AttributeName',display:'AttributeName',type:'text',ctrlAttr:{maxlength:100},ctrlCss:{width:'160px'},
    {name:'Operation',display:'Operation',type:'select',ctrlOptions:{0:'Choose',1:'Equals',2:'DoesNotEqual',3:'Contains',4:'DoesNotContain',5:'StartsWith',6:'doesnotstartswith',7:'MatchRegex',8:'DoesNotMatchRegex',ctrlAttr{maxlength:100},ctrlCss:{width:'100px'},
    {name:'AttributeValue',display:'AttributeValue',type:'text',ctrlAttr:{maxlength:4},ctrlCss:{width:'160px'}}
    ],
    隐藏按钮:{
    是的,
    向下移动:对
    }
    });
    });    
    

    
    $('#对话框_保存按钮')。按钮()。单击(函数(){
    var oData=$(document.forms[0]).serialize()
    警报(oData);
    $.ajax({
    键入:“post”,
    url:“/configuration/NewFilter”,
    资料来源:oData,
    成功:警报(“成功记录数据”)
    });
    });
    
    [HttpPost]
    public ActionResult NewFilter(string filter)
    {
       return RedirectToAction("Index");
    }
    
    
    @model Models.FilterModel
    @{
        ViewBag.Title = "New Filter";
    }
    
    <form id="frmMain" name="frmMain" method="post">
    <fieldset>
        <legend>New Filter</legend>
        <table id="tblAppendGrid"></table>  
     </fieldset>
    </form>
    
    <script type="text/javascript">
    $(document).ready(function () {
        // Initialize appendGrid
        $('#tblAppendGrid').appendGrid({
            caption: 'Filters Collections',
            initRows: 4,
            columns: [
                { name: 'AttributeName', display: 'Attribute Name', type: 'text', ctrlAttr: { maxlength: 100 }, ctrlCss: { width: '160px'} },
                { name: 'Operation', display: 'Operation', type: 'select', ctrlOptions: { 0: 'Choose', 1: 'Equals', 2: 'DoesNotEqual', 3: 'Contains', 4: 'DoesNotContain', 5: 'StartsWith', 6: 'DoesNotStartWith', 7: 'MatchRegex', 8: 'DoesNotMatchRegex' }, ctrlAttr: { maxlength: 100 }, ctrlCss: { width: '100px'} },
                { name: 'AttributeValue', display: 'Attribute Value', type: 'text', ctrlAttr: { maxlength: 4 }, ctrlCss: { width: '160px'} }
            ],
    
            hideButtons: {
                moveUp: true,
                moveDown: true
            }
        });
    });    
    
    <script type="text/javascript">
    $('#dialog_Save-button').button().click(function () {
        var oData = $(document.forms[0]).serialize()
     alert(oData);
     $.ajax({
         type: 'post',
         url: "/configuration/NewFilter",
         data: oData,
         success: alert("Record UdpateSucessfully.")
     });
     });
    </script>