我正试图找到一种方法来从剑道调度器中删除时间头。我遇到过一些通过css实现的方法,但它们往往会让调度程序看起来有点"关闭"。
我在剑道文档中找到了一些答案,详细说明了如何用javascript实现开箱即用,但我正在寻找MVC,我似乎找不到任何提及。我已经尝试并试图找出如何做到这一点,但我似乎找不到适当的属性设置。
剑道MVC包装器实际上是生成javascript实现的ASPX/Razor helper函数。因此,假设您提供的链接中的javascript解决方案包含您需要的解决方案,应该可以使用MVC语法复制它。
看看telerik的解决方案,他们在Ungrouped的dataBinding事件和分组的dataBound事件中用javascript操作DOM。您可以在使用MVC语法声明调度程序时指定这些事件的处理程序:
.Events(e => {
e.DataBound("scheduler_dataBound");
e.DataBinding("scheduler_dataBinding");
})
…然后分别在页面上包括这些函数的实现(代码取自teleerik解决方案):
<script>
function scheduler_dataBound(e) {
var tables = $(".k-scheduler-times .k-scheduler-table");
//Required: remove only last table in dataBound when grouped
tables = tables.last();
var rows = tables.find("tr");
rows.each(function() {
$(this).children("th:last").hide();
}
function scheduler_dataBinding(e) {
var view = this.view();
view.times.hide();
view.timesHeader.hide();
}
</script>
//设置隐藏时间头
$ (' # schedulerID '); (.k-scheduler-header-wrap) .closest (tr) hide ()
//隐藏日期头
$("。k-scheduler-layout tr:首先.k-scheduler-table");(tr: eq (0)) hide ()