gpt4 book ai didi

javascript - 禁用 Incell Kendo 网格中的编辑

转载 作者:行者123 更新时间:2023-11-30 17:20:09 24 4
gpt4 key购买 nike

我有一个剑道网格,其中最后一列有一个复选框,我从服务器端绑定(bind)这个网格(从服务器填充数据)并且复选框值也来自服务器。我想要禁用复选框值为 true 的整行,即已选中,并希望在复选框值为 false 时允许编辑,即未选中。我的代码如下:

 @(Html.Kendo().Grid(Model)
.Name("UpdatedHeadGrid")
.Columns(columns =>
{
columns.Bound(p => p.ID).Hidden(true).ClientTemplate("#= ID#" + "<input type='hidden' class='ID' value='#=ID#' />").Width(10);
columns.Bound(p => p.IsAllocated).HeaderHtmlAttributes(new { title = "Allocatable" }).Title("Allocatable").ClientTemplate("<input type='checkbox' ${ IsAllocated == true ? checked='checked' : ''} class='IsAllocated' value='#=data.IsAllocated#' style='width:50px;' />").Width(50).HtmlAttributes(new { style = "text-align: center;vertical-align: middle;"});
columns.Bound(p => p.Total).HeaderHtmlAttributes(new { title = "Total Amount" }).Title("Total").ClientTemplate("<input type='text' disabled='disabled' class='Total' value='#=data.Total#' style='width:65px;' />").Width(60).HtmlAttributes(new { style = "text-align:right", onclick = "DisableEdit(this)" });
.Editable(editable => editable.Mode(GridEditMode.InCell))
.Events(e =>
{
e.DataBound("onRowBound");

e.Edit("onEdit");
})
.PageSize(15)
.Resizable(resize => resize.Columns(true))
)

为此,我编写了编辑函数,即 onEdit 函数,如下所示:

  <script>
function onEdit(e)
{

var fieldName12548 = e.container.find('input[type="checkbox"][name="IsAllocated"]').attr("value");
if (fieldName12548 === "Total") {
this.closeCell();
}
}
</script>

在这里,我必须禁用所有行,而不仅仅是字段名称为“Total”的列。

最佳答案

为此,您必须将数据源用作::

 .DataSource(dataSource => dataSource
.Ajax()
.Model(model =>
{
model.Id(p => p.ID);
model.Field(p => p.Total).Editable(false);

})
.PageSize(15)
)

在上面的代码中,我将可编辑模式设置为“false”,这将禁用该单元格。

关于javascript - 禁用 Incell Kendo 网格中的编辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25279221/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com