我正在使用带有Kendo UI的ASP.NET MVC 4(kendo网格).Below是Kendo Grid的示例代码 -
@(Html.Kendo().Grid(Model.Users).Name("Grid").Columns(columns =>
{
columns.Bound(p => p.FirstName);
columns.Bound(p => p.LastName);
columns.Bound(p => p.UserName);
columns.Bound(p => p.Email);
columns.Bound(o => o.IsActive).ClientTemplate(links).Title("Action");
})
在上面的代码中,我的IsActive列有一些操作链接,如编辑,更新,删除。我将这些链接添加到Kendo网格中的链接变量。我想在条件的基础上使用链接变量。我想我想在这里使用条件ClientTemplate。
所以有人建议如何在kendoGrid中创建条件ClientTemplate?
2)另外我想在我的模型(Model.Users)的bool字段值的基础上添加条件。
所以我想知道如何从每个行的kendo网格中的Model.Users模型中获取该字段。喜欢 -
.ClientTemplate(if(IsAdmin && ViewBag.IsActive){.....} else{....})
答案 0 :(得分:3)
你可以尝试下面的代码..可能对你有帮助..
columns.Bound(p => p.Active).ClientTemplate("\\#if('#=Active#'=='Y') {\\<input type='button' value='OK' />\\}\\#");
或可能正在使用
"#= (Active) ? ' ' : 'your code here' #"
答案 1 :(得分:1)
您可以使用以下代码:
@(Html.Kendo().Grid(Model.Users).Name("Grid").Columns(columns =>
{
columns.Bound(p => p.FirstName);
columns.Bound(p => p.LastName);
columns.Bound(p => p.UserName);
columns.Bound(p => p.Email);
columns.Bound(o => o.IsActive).ClientTemplate("#if(IsActive){#<a href='javascript:void(0)' >Edit</a>#}#").Title("Action");
})
答案 2 :(得分:0)
我正在连接一个名称,并使用一个javascript函数,这使条件测试变得更加容易,而且您还可以访问多个字段:
using (var db = _stagingConnectionFactory.Open())
{
var query = db.From<tblActivityImportCalculationQueue>();
query = query.Where(i =>
(DateTime.Now - i.LastUpdated.Value).TotalMinutes > 30
);
query.ToMergedParamsSelectStatement();
}