Javascript Kendo UI网格在ClientTemplate中获取行Id
我有一个KendoUI网格中列的自定义模板,我需要获取行的Id,以便将其传递给Javascript函数。我应该注意到,在ClientTemplate中,我有一些Url.Actions可以访问带有“#=Id#”的Id,但由于某些原因,它不能与函数调用一起使用Javascript Kendo UI网格在ClientTemplate中获取行Id,javascript,c#,asp.net-mvc,kendo-ui,kendo-grid,Javascript,C#,Asp.net Mvc,Kendo Ui,Kendo Grid,我有一个KendoUI网格中列的自定义模板,我需要获取行的Id,以便将其传递给Javascript函数。我应该注意到,在ClientTemplate中,我有一些Url.Actions可以访问带有“#=Id#”的Id,但由于某些原因,它不能与函数调用一起使用 "#if (hasLogFile(#Id#)) {#" + "<a role='button' class='btn btnAwesome' href='" + Url.Action("GetLogFile", "Run") +
"#if (hasLogFile(#Id#)) {#" +
"<a role='button' class='btn btnAwesome' href='" + Url.Action("GetLogFile", "Run") + "/#=Id#' title='Log File'><i class='fa fa-file-text-o' aria-hidden='true'></i></a>" +
"#} else {#" +
"<a role='button' class='btn btnAwesome disabled-icon' title='Log File'><i class='fa fa-file-text-o' aria-hidden='true'></i></a>" +
"#}#"
“#如果(hasLogFile(#Id#)){”+
"" +
“}否则{”+
"" +
"#}#"
我已经尝试了无数种方法,将参数设置为
hasLogFile()代码>(包括\=Id
)。可以将一些内容传递到函数中,例如各种jQuery对象或纯文本。只需获取Id即可。模板数据的包装方式可以让您直接在模板代码逻辑中引用它
#if (hasLogFile(#Id#))…
变成
#if (hasLogFile(Id))…
模板函数作用域用和(数据)
包装,这就是为什么您应该能够直接访问属性,例如Id
。但是您仍然需要处理数据
对象,因此您可以尝试将其传递给函数,例如hasLogFile(data)
。如果id被声明到dataItem中,它就会出现。这可能会起作用-->#如果(hasLogFile(id))…伙计,我可以发誓我在某个时候尝试过(hasLogFile(id)),使用了所有不同的迭代。如果你想把它写进一个答案中,也许会有一些关于我在问题中所做的不起作用的细节,我会把它标记为修复。