Javascript,如何利用占位符内动态创建的 RadGrid 中的 get_masterTableView

标签 javascript telerik radgrid

我认为这个很简单。如何从动态创建的 radgrid 中使用 get_masterTableView() 。您不能使用 var radGrid = $find('<%= MyGrid.ClientID %>')因为网格不存在于 aspx 页面中,所以它在后面的代码中找到。 GetelementById 找到了 radgrid,但它没有 get_matertableview。

有什么想法吗?

最佳答案

您在什么时候尝试调用get_masterTableView()?这个例子应该可以工作。

ASPX:

<asp:PlaceHolder ID="phRG" runat="server"></asp:PlaceHolder>

C#:

var rg = new RadGrid();
rg.ID = "RadGrid1";
rg.ClientSettings.ClientEvents.OnGridCreated = "gridCreatedTest";
rg.MasterTableView.Columns.Add(new GridBoundColumn()
{
    UniqueName = "TransAmnt", DataField = "TransAmnt", SortExpression = "TransAmnt"
});

var batchChecks = new DataTable("checksRandomName");
batchChecks.Columns.Add("TransAmount");
batchChecks.Rows.Add(new ArrayList() { 7 }.ToArray());
batchChecks.Rows.Add(new ArrayList() { 16 }.ToArray());

var dsBatch = new DataSet("batch");
dsBatch.Tables.Add(batchChecks);

rg.VirtualItemCount = dsBatch.Tables.Count;
rg.DataSource = dsBatch;

phRG.Controls.Add(rg);

此 JavaScript 函数将提醒正确的“7”和“16”示例值:

function gridCreatedTest() {
    var grid = $find("RadGrid1"),
        masterTable = grid.get_masterTableView(),
        rows = masterTable.get_dataItems();
    for (i = 0; i < rows.length; i++) {
        row = rows[i];
        alert(masterTable.getCellByColumnUniqueName(row, "TransAmount").innerHTML);
    }
}

关于Javascript,如何利用占位符内动态创建的 RadGrid 中的 get_masterTableView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24372349/

相关文章:

javascript - 在 sails 中创建 UTC 时间戳而不覆盖 'createdAt' 和 'updatedAt'

c# - Telerik - 网格行内的图像按钮,获取第一个单元格的值

c# - 是否可以使用 C#/WPF 控制 Telerik RadPropertyGrid 的可见性?

javascript - radgrid - 在客户端获取服务器编辑的行

javascript - Angular : Creating questions using a directive

javascript - 如何将提供程序添加到 Angular 2 中的服务类?

javascript - JSLint 在计算 a * a 中的平方时提示

c# - 使用格式化选项将多个 radgrids 上传到单个 excel 表

c# - RadGridView检测CellClick事件按钮

telerik - radajax 更新控制问题