使用JavaScript的剑道UI ASP.NET MVC-网格-隐藏复选框
我想根据我拥有的类型变量显示或隐藏复选框() 复选框在剑道网格的弹出编辑对话框中呈现。这在下面的EditorTemplate-代码中:使用JavaScript的剑道UI ASP.NET MVC-网格-隐藏复选框,javascript,asp.net-mvc,kendo-ui,kendo-grid,kendo-asp.net-mvc,Javascript,Asp.net Mvc,Kendo Ui,Kendo Grid,Kendo Asp.net Mvc,我想根据我拥有的类型变量显示或隐藏复选框() 复选框在剑道网格的弹出编辑对话框中呈现。这在下面的EditorTemplate-代码中: @model Publication @Html.HiddenFor(model => model.DocumentUpdateId) <div class="editor-label"> @Html.LabelFor(model => model.PublicationTime) </div> <div c
@model Publication
@Html.HiddenFor(model => model.DocumentUpdateId)
<div class="editor-label">
@Html.LabelFor(model => model.PublicationTime)
</div>
<div class="editor-field">
@(Html
.Kendo()
.DatePicker()
.Name("PublicationTime")
)
</div>
<div class="editor-label">
@Html.LabelFor(model => model.PdfModifiedDate)
</div>
<div class="editor-field">
@(Html
.Kendo()
.Upload()
.Name("PdfModifiedDate")
.Multiple(false)
.Async(a => a
.Save("UploadFile","Home")
)
.Events(events => events
.Upload("OnImageUpload")
)
)
</div>
<div class="editor-label">
@Html.LabelFor(model => model.Carousel)
</div>
<div class="editor-field">
@(Html
.Kendo()
.CheckBox()
.Name("Carousel")
)
</div>
@模型发布
@Html.HiddenFor(model=>model.DocumentUpdateId)
@LabelFor(model=>model.PublicationTime)
@(Html
.Kendo()
.DatePicker()
.名称(“发布时间”)
)
@LabelFor(model=>model.PdfModifiedDate)
@(Html
.Kendo()
.Upload()
.名称(“PdfModifiedDate”)
.Multiple(假)
.Async(a=>a
.Save(“上传文件”、“主页”)
)
.Events(Events=>Events
.上传(“OnImageUpload”)
)
)
@LabelFor(model=>model.Carousel)
@(Html
.Kendo()
.CheckBox()
.名称(“旋转木马”)
)
我希望能够访问复选框并根据docType隐藏它。My OnEdit事件运行并呈现日历的正确日期,但不隐藏复选框:
function OnEdit(e) {
console.log("OnEdit");
console.log(e);
// set the default date
var pt = $('#PublicationTime').data("kendoDatePicker");
pt.value(new Date());
var vm = e.model,
container = e.container,
docType = vm.DocumentType;
vm.PublicationTime = new Date();
vm.dirty = true;
console.log(vm.DocumentType);
console.log(docType.indexOf("Sector"));
if (docType.indexOf("Sector") < 0) {
console.log("inside if statement")
console.log(container.find("#Carousel"));
container.find("#Carousel").hide();
}
}
函数OnEdit(e){
console.log(“OnEdit”);
控制台日志(e);
//设置默认日期
var pt=$(“#PublicationTime”).data(“kendoDatePicker”);
pt.值(新日期());
var vm=e.model,
容器=即容器,
docType=vm.DocumentType;
vm.PublicationTime=新日期();
vm.dirty=true;
console.log(vm.DocumentType);
console.log(docType.indexOf(“扇区”);
if(docType.indexOf(“扇区”)<0){
log(“内部if语句”)
console.log(container.find(#Carousel));
container.find(“#Carousel”).hide();
}
}
剑道文档没有任何关于访问复选框的内容。我还试图在OnEdit事件中创建一个复选框,但也没有成功-这似乎是不可能的。因为剑道复选框不仅仅是一个简单的输入。。尝试将复选框放在另一个容器中,并隐藏该容器
<div class="carousel-checkbox">
<div class="editor-label">
@Html.LabelFor(model => model.Carousel)
</div>
<div class="editor-field">
@(Html
.Kendo()
.CheckBox()
.Name("Carousel")
)
</div>
</div>
if (docType.indexOf("Sector") < 0) {
console.log("inside if statement")
console.log(container.find("#Carousel"));
container.find(".carousel-checkbox").hide();
}
@LabelFor(model=>model.Carousel)
@(Html
.Kendo()
.CheckBox()
.名称(“旋转木马”)
)
if(docType.indexOf(“扇区”)<0){
log(“内部if语句”)
console.log(container.find(#Carousel));
container.find(“.carousel复选框”).hide();
}
如果您只想隐藏复选框而不想隐藏标签,请将
carousel checkbox
类添加到包含复选框的div中
,您可以检查checkbox元素的呈现输入,以查看剑道成员为其分配的id/名称。基于这些信息,您可以在jquery中使用该句柄来隐藏element@MuhammadAdeelZahid这就是我已经在做的,但它没有被隐藏。因为onEdit
是在upload widget上定义的e.container
将为您提供包含upload widget的html元素,而不是带有carouselkendo复选框的元素,这与常规的复选框。。它使用图像来显示选中状态。。你得把一切都藏起来