【问题标题】:Radgrid fire RowClick Event via Javascript or Just use EnablePostbackOnRowClickRadgrid 通过 Javascript 触发 RowClick 事件或仅使用 EnablePostbackOnRowClick
【发布时间】:2013-05-08 20:31:16
【问题描述】:

值得讨论

从具有以下场景的 Telerik radgrid 触发 RowClick 事件的专家/缺点是什么,它们都可以正常工作;-)

场景 1:

辐射网格

OnSelectedIndexChanged="RG_SelectedIndexChanged"
ClientSettings.EnablePostBackOnRowClick="true"

后面的代码

protected void RG_SelectedIndexChanged(){}

场景 2:

辐射网格

OnItemCommand="RG_ItemCommand"
ClientSettings.EnablePostBackOnRowClick="true"

代码背后

Protected void RG_ItemCommand()
{
 if(e.commandname == "RowClick")
{
}
}

场景 3:

辐射网格

OnItemCommand="RG_ItemCommand"
ClientSettings.ClientEvents.OnRowClick="RG_RowClick"

Javascript

function RG_RowClick(sender, eventArgs) {
var index = eventArgs.get_itemIndexHierarchical();
sender.get_masterTableView().fireCommand("RowClick", index);
}

后面

Protected void RG_ItemCommand()
{
 if(e.commandname == "RowClick")
{
}
}

【问题讨论】:

    标签: javascript asp.net telerik radgrid


    【解决方案1】:

    场景 1 和 2:

    RadGrid 中的所有事件首先触发 ItemCommand。然后将该事件冒泡为特定事件,例如 SelectedIndexChangedInsertCommandUpdateCommand

    基本上,如果你想在 SelectedIndexChanged 事件被调用之前做一些事情,你想在 ItemCommand 事件中执行那个任务。

    场景 3:

    场景 3 只是从客户端调用服务器端 ItemCommand 事件。

    它与场景 2 基本相同,除非您想在服务器端调用 ItemCommand 之前执行任何客户端任务。例如,“你确定要...吗?”

    如果您不需要客户端功能,只需使用场景 1 或 2,它们更简洁、更易于维护。

    【讨论】:

      猜你喜欢
      • 2017-04-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-25
      • 1970-01-01
      相关资源
      最近更新 更多