首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MVCGrid.NET -如何重新加载网格?

MVCGrid.NET -如何重新加载网格?
EN

Stack Overflow用户
提问于 2019-05-27 23:07:46
回答 1查看 1.1K关注 0票数 2

我正在使用MVCGrid.NET http://mvcgrid.net/

并且我创建了一个非流畅的网格http://mvcgrid.net/gettingstarted (请参阅非流畅示例

代码语言:javascript
复制
GridDefinition<YourModelItem> def = new GridDefinition<YourModelItem>();

GridColumn<YourModelItem> column = new GridColumn<YourModelItem>();
column.ColumnName = "UniqueColumnName";
column.HeaderText = "Any Header";
column.ValueExpression = (i, c) => i.YourProperty;
def.AddColumn(column);

def.RetrieveData = (options) =>
{
    return new QueryResult<YourModelItem>()
        {
            Items = new List<YourModelItem>(),
            TotalRecords = 0
        };
};

MVCGridDefinitionTable.Add("NonFluentUsageExample", def);

现在,我在提交表单时显示了我的网格,但是当我再次提交表单时,我希望有新的数据,但是网格不会重新加载或刷新。当我刷新页面时,它甚至不会重置,我必须完全重新加载页面才能重置它,这很糟糕,有人知道当我想要显示新数据时如何刷新或重新加载网格吗?

我甚至尝试过这个:http://mvcgrid.net/demo/NoQueryOnPageLoad

但它没有重新加载或刷新。

请帮帮我!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-05-31 18:39:29

它会重新加载,试试这个,

代码语言:javascript
复制
 //model class
    public class YourModelItem
    {
        public int Id { get; set; }
        public string YourProperty { get; set; }
    }



    //controller
    public class HomeController : Controller
    {
        private static List<YourModelItem> _modelItems = new List<YourModelItem>();

        public ActionResult Index()
        {
            GridDefinition<YourModelItem> def = new GridDefinition<YourModelItem>();

            GridColumn<YourModelItem> column = new GridColumn<YourModelItem>();
            column.ColumnName = "UniqueColumnName";
            column.HeaderText = "Any Header";
            column.ValueExpression = (i, c) => i.YourProperty;
            def.AddColumn(column);

            def.RetrieveData = (options) => new QueryResult<YourModelItem>()
            {
                Items = _modelItems,
                TotalRecords = 0
            };

            MVCGridDefinitionTable.Add("NonFluentUsageExample", def);

            return View();
        }

        [HttpPost]
        public JsonResult Add(YourModelItem item)
        {
            _modelItems.Add(item);

            return Json(true, JsonRequestBehavior.AllowGet);
        }
    }

index.cshtml

代码语言:javascript
复制
@{
    ViewBag.Title = "Home Page";
}

@using MVCGrid.Web

<div class="jumbotron">
    <div id="form1">
        <div class="form-group">
            <label for="Id">ID</label>
            <input type="number" class="form-control" id="Id" aria-describedby="Id" placeholder="Enter Id">
        </div>
        <div class="form-group">
            <label for="YourProperty">YourProperty</label>
            <input type="text" class="form-control" id="YourProperty" placeholder="Enter Your Property">
        </div>

        <button id="addItem">Submit</button>
    </div>

    <br />

    @Html.MVCGrid("NonFluentUsageExample")
</div>

@section scripts {
    <script type="text/javascript">
        $(document).ready(function () {
            $("#addItem").click(function () {
                var formData = { Id: $('#Id').val(), YourProperty: $('#YourProperty').val() };

                $.ajax({
                    type: "POST",
                    url: "/Home/add",
                    dataType: 'json',
                    contentType: 'application/json',
                    data: JSON.stringify(formData),
                    success: function(data) {
                        if (data) {
                            MVCGrid.reloadGrid('NonFluentUsageExample');
                        }
                    }
                });
            });
        });
    </script>
}

_layout.cshtml ->正文

代码语言:javascript
复制
<body>
    <div class="container body-content">
        @RenderBody()
    </div>

    @Scripts.Render("~/bundles/jquery")
    @Scripts.Render("~/bundles/bootstrap")
    <script src="~/MVCGridHandler.axd/script.js"></script>

    @RenderSection("scripts", required: false)
</body>

它在"Submit“之后添加项目并重新加载。只需在新的asp.net mvc - Install-Package MVCGrid.Net中安装MVCGrid,将这些行放在上面

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56328573

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档