Я хочу реализовать DevExpress Grid есть проблема, чтобы связать кнопку сохранения - PullRequest
0 голосов
/ 19 мая 2019

Демо https://js.devexpress.com/Demos/Widgetsgallery/Demo/DataGrid/RowEditingAndEditingEvents/NetCore/Light/

То, чего я пытаюсь добиться, - когда пользователь нажимает кнопку Изменить, он обновляет строку, а затем, когда пользователь нажимает кнопку сохранения, он должен отправить запрос действию и обновить базу данных, которую мы используем Asp MVC Core. не знаю, какая пользовательская функция Jquery связана с DevExtreme, кнопка сохранения, проверьте код, и я также делюсь URL-адресом DevExpre

@using DevExtremeAspNetCoreApp1.Models

<h2>Home</h2>

@(Html.DevExtreme().DataGrid<Order>()
                .ShowBorders(true)
                .DataSource(d => d.Mvc().Controller("Orders").LoadAction("Get").Key("OrderID"))
                .Columns(columns =>
                {
                    columns.AddFor(m => m.OrderID);
                    columns.AddFor(m => m.OrderDate);
                    columns.AddFor(m => m.CustomerName);
                    columns.AddFor(m => m.ShipCountry);
                    columns.AddFor(m => m.ShipCity);
                })
                .Paging(p => p.PageSize(10))
                .Editing(editing =>
                {
                    editing.Mode(GridEditMode.Row);
                    editing.AllowAdding(true);
                    editing.AllowDeleting(true);
                    editing.AllowUpdating(true);
                }).OnRowUpdated(@<text> function(e) { logEvent("RowUpdated"); } </text>)
                                                .FilterRow(f => f.Visible(true))
                                                .HeaderFilter(f => f.Visible(true))
                                                .GroupPanel(p => p.Visible(true))
                                                .Grouping(g => g.AutoExpandAll(false))
                                                .RemoteOperations(true)
                                                .Summary(s => s
                                                    .TotalItems(totalItems =>
                                                    {
                                                        totalItems.AddFor(m => m.ShipCity).SummaryType(SummaryType.Count);
                                                    })
                                                    .GroupItems(groupItems =>
                                                    {
                                                        groupItems.Add().SummaryType(SummaryType.Count);
                                                    })
                                                )
)



<div id="data-grid-demo">
    @(Html.DevExtreme().DataGrid<Order>()
                        .ShowBorders(true)
                        .DataSource(d => d.Mvc().Controller("Orders").LoadAction("Get").Key("OrderID"))
                        .ID("gridContainer")
                        .ShowBorders(true)
                        .Paging(p => p.Enabled(false))
                        .Editing(e => e.Mode(GridEditMode.Popup)
                           .AllowUpdating(true)
                           .Popup(p => p
                                .Title("Employee Info")
                                .ShowTitle(true)
                                .Width(700)
                                .Height(525)
                                .Position(pos => pos
                                    .My(HorizontalAlignment.Center, VerticalAlignment.Top)
                                    .At(HorizontalAlignment.Center, VerticalAlignment.Top)
                                    .Of(new JS("window"))
                                )
                           )
                           .Form(f => f.Items(items =>
                           {
                               items.AddGroup()
                                   .ColCount(2)
                                   .ColSpan(2)
                                   .Items(groupItems =>
                                   {
                                       groupItems.AddSimpleFor(m => m.CustomerID);
                                       groupItems.AddSimpleFor(m => m.CustomerName);
                                       groupItems.AddSimpleFor(m => m.OrderDate);
                                       groupItems.AddSimpleFor(m => m.OrderID);
                                       groupItems.AddSimpleFor(m => m.ShipCity);
                                       groupItems.AddSimpleFor(m => m.ShipCountry);

                                       groupItems.AddSimpleFor(m => m.CustomerName)
                                           .ColSpan(2)
                                           .Editor(editor => editor.TextArea().Height(100));
                                   });

                               items.AddGroup()
                                   .Caption("Home Address")
                                   .ColCount(2)
                                   .ColSpan(2)
                                   .Items(groupItems =>
                                   {
                                       groupItems.AddSimpleFor(m => m.CustomerID);
                                       groupItems.AddSimpleFor(m => m.CustomerID);
                                   });
                           }))
                        )
                        .Columns(columns =>
                        {
                            columns.AddFor(m => m.CustomerID)
                                .Width(70);

                            columns.AddFor(m => m.CustomerName);

                            columns.AddFor(m => m.CustomerName);

                            columns.AddFor(m => m.CustomerName);

                            columns.AddFor(m => m.CustomerName)
                                .Width(170);

                            columns.AddFor(m => m.CustomerName);

                            columns.AddFor(m => m.CustomerName)
                                .Width(125)
                                .Lookup(lookup => lookup
                                    .DataSource(d => d.Mvc().Controller("DataGridStatesLookup").LoadAction("Get").Key("ID"))
                                    .DisplayExpr("Name")
                                    .ValueExpr("ID")
                                );

                            columns.AddFor(m => m.CustomerName)
                                .Visible(false);

                            columns.AddFor(m => m.CustomerName)
                                .Visible(false);
                        })
                        .DataSource(d => d.Mvc()
                            .Controller("DataGridEmployees")
                            .LoadAction("Get")
                            .UpdateAction("Put")
                            .Key("ID")
                        )
                        .DataSourceOptions(d => d.Filter("['ID', '<=' , 14]"))
    )
</div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...