禁用条件自定义工具栏按钮

时间:2012-09-11 16:23:11

标签: telerik-grid telerik-mvc

我在Telerik mvc网格上使用自定义工具栏按钮。

例如:

.ToolBar(toolBar =>
          {
toolBar.Custom().Url("#").ButtonType(GridButtonType.Text).Text("send to web service").HtmlAttributes(new {@onclick = "SendReportConfirmationDialog()"});

})

但是这个控件没有.hidden(true)或.enabled(false)属性,所以我试图根据某个布尔值禁用带有true或false的按钮。

你知道这是否可能吗?

2 个答案:

答案 0 :(得分:4)

没有这样的配置。您可以尝试在加载网格时使用JavaScript禁用它(OnLoad事件)

$('.t-toolbar .t-button').addClass('t-state-disabled').click(function(){return false});

以上将禁用工具栏中的所有按钮 - 更具体地说,您可以通过HtmlAttributes方法将类分配给命令按钮,

tb.Custom().Text("test").HtmlAttributes(new{ @class="myTbCommand"})

并更改选择器:

$('.myTbCommand').addClass('t-state-disabled').click(function(){return false});

Dunno,如果这有帮助,但我认为没有别的办法。

答案 1 :(得分:0)

解决方案非常简单:

根据控制器ViewBag中的值在方法链中使用if条件。这样就可以了,自定义工具栏中没有按钮。

 .ToolBar(toolBar =>
      {
          if (ViewBag.gridEditMode != false)
          {
              toolBar.Custom().Url("#").Text("Send").HtmlAttributes(new {@onclick = "SendXSD()"});
          }
      })