根据条件启用/禁用Radgrid列批量编辑

时间:2014-06-26 09:34:35

标签: telerik telerik-grid radgrid

我有一个RadGridEditMode设置为Batch。我想在某些条件下禁用列编辑,例如条件“A”我需要编辑启用,条件“B”我需要禁用编辑。

2 个答案:

答案 0 :(得分:1)

我使用了java-script:

在RadGrid中,您只需添加代码:

 <ClientSettings ...
     <ClientEvents  OnRowClick="OnRowClick" />
   ...>

在JavaScript中:

function OnRowClick(sender, eventArgs) {

      var RowID = eventArgs.get_id(); //get Row

      var masterTable = $find("<%=rdGrid.ClientID%>").get_masterTableView(); //get Grid

      var ControlX = masterTable.get_dataItems()[RowID].findElement('ControlX').id; //get Control ID

      //check conditions then disable or enable...

      $(ControlX).prop('disabled', false); //Get Control and Disable the editing

...

}

答案 1 :(得分:0)

我尝试了这个,但它确实有效。

        <ClientSettings AllowKeyboardNavigation ="true">
       <ClientEvents OnBatchEditOpening="batchEditOpening" OnBatchEditOpened="batchEditOpened" OnBatchEditClosed="OnBatchEditClosed" OnKeyPress ="KeyPress" />
    </ClientSettings>

function batchEditOpening(sender,args){     var rulesValue = document.getElementById(“cphContent_LoginAuditControl_RolesHiddenField”)。value;     if(args.get_columnUniqueName()==“Reason”|| args.get_columnUniqueName()==“Comment”){         if(rulesValue =='false'){             args.set_cancel(真);         }     }

}