我想基于其他一些列在kendo-ui网格中启用/禁用自定义命令。 我如何实现这一目标?以下是示例代码
@(Html.Kendo().Grid<Model>()
.Name("Grid")
.Columns(columns =>
{
columns.Bound(a => a.Name).Width(90);
columns.Bound(a => a.Flag).Width(170);
columns.Command(commands => commands.Custom("ABC").Text("ABC").Click("ABC")).Title ("ABC").Width(130);
...
}
我想根据标志值启用/禁用ABC命令按钮。请帮帮我。
答案 0 :(得分:1)
您无法通过命令列执行此操作。
我建议您创建模板列,根据您的条件显示按钮。如何在模板中执行条件逻辑(或使用外部函数来处理复杂的逻辑)包括here。
答案 1 :(得分:1)
我解决了这个问题。以下是示例代码。
columns.Bound(a => a.Flag).ClientTemplate(
"# if(Flag == 'Value1') { #" + "<input type='button'
class='info k-button k-button- icontext' onclick='clickhere(#=parameter1#)'
value='ClickHere' />" +
"# } else { #" +
"NormalText" +
"# } #").Width(100).Title("ConditionalButton");
//JavaScript
<script type="text/javascript">
function clickhere(parameter1) {
window.location.href = '@Url.Action("Event", "Home")' +
'?parameter1=' + parameter1;
}
</script>