我想从 javascript 中的 DevExtreme DataGrid 获取数据

I want to get data from a DevExtreme DataGrid in javascript

我只想从 JavaScript 的 DevExtreme DataGrid 中的一列中获取数据并保存。

这是数据网格,我想获取“nSupplierCode”列。

<div class="content-block">
                @(Html.DevExtreme().DataGrid()
                    .ID("ID_gridSuppliers")
                    .DataSource(Model.MainSuppliers)
                    .LoadPanel(loadPanel => loadPanel.Enabled(true))
                    .RowAlternationEnabled(true)
                    .Scrolling(scrolling => scrolling.Mode(GridScrollingMode.Standard))
                    .Selection(s => s.Mode(SelectionMode.Single))
                    .ShowBorders(true)
                    .HeaderFilter(headerFilter => headerFilter.Visible(true))
                    .FilterRow(filterRow => filterRow.Visible(true).ApplyFilter(GridApplyFilterMode.Auto))
                    .OnSelectionChanged("attire.supplier.suppliers.OnSupplierSelected")
                    .Columns(columns =>
                    {
                        columns.Add()
                        .DataField("nSupplierCode")
                        .Caption("Code")
                        .Width("40%");

                        columns.Add()
                        .DataField("cSupplierName")
                        .Caption("Name")
                        .Width("60%");
                    })
                )
            </div>

假设网格已经填充,您只需要在 .js 文件中编写函数。

你可以试试这个:

$(function () {
    var data = [];
    var tdlist = $('#ID_gridSuppliers').find('.dx-datagrid-rowsview .dx-data-row td:nth-child(2)');   //td:nth-child(2) get the second column
    tdlist.each(function (i, td) {
        data.push($(td).text());
    })
    console.log(data);
})