Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 带复选框的Telerik MVC电网不工作_Jquery_Asp.net Mvc - Fatal编程技术网

Jquery 带复选框的Telerik MVC电网不工作

Jquery 带复选框的Telerik MVC电网不工作,jquery,asp.net-mvc,Jquery,Asp.net Mvc,我知道我的代码是正确的,但我是否因为Telerik MVC网格“检查所有复选框”不起作用而遗漏了一些脚本?我正在使用jquery-1.7.1.min.js @(Html.Telerik().Grid<RenanNewTask.Models.RenanListViewModel>() .Name("RenanGrid") .DataKeys(dataKeys => dataKeys.Add(c => c.Org_UID)) .Columns(colu

我知道我的代码是正确的,但我是否因为Telerik MVC网格“检查所有复选框”不起作用而遗漏了一些脚本?我正在使用jquery-1.7.1.min.js

@(Html.Telerik().Grid<RenanNewTask.Models.RenanListViewModel>()
    .Name("RenanGrid")
    .DataKeys(dataKeys => dataKeys.Add(c => c.Org_UID))
    .Columns(columns =>
    {
        //columns.Bound(c => c.eff_date).Title("Effective Date").Format("{0:MM/dd   /yyyy}").Width(20);
        columns.Bound(c => c.eff_date).Title("Effective Date").ReadOnly(true).Format("{0:MM/dd/yyyy}").Width(20).Encoded(true)
            .ClientTemplate("<input type='checkbox' name='checkedRecords' value='<#= eff_date #>' />")
            .HeaderTemplate(
                    @<text>
                        <input type="checkbox" title="check all records" id="checkAllRecords" />
                    </text>
        )
        .Title("")
        .Width(10)
        .HeaderHtmlAttributes(new { style = "text-align:center" })
        .HtmlAttributes(new { style = "text-align:center" });
        columns.Bound(o => o.eff_date).Width(20);
        columns.Bound(c => c.name_long).Title("Name Long").Width(20);
    })
    .DataBinding(dataBinding => dataBinding.Ajax()
        .Select("GetOrgUID", "Renan"))
    .Pageable(paging => paging.Style((GridPagerStyles.PageInput | GridPagerStyles.Numeric | GridPagerStyles.PageSizeDropDown | GridPagerStyles.NextPrevious)).Position(GridPagerPosition.Bottom).PageTo(1).PageSize(20))
    .Scrollable(scrolling => scrolling.Height(250))
    .Resizable(resizing => resizing.Columns(true))
)
@(Html.Telerik().Grid())
.名称(“RenanGrid”)
.DataKeys(DataKeys=>DataKeys.Add(c=>c.Org\u UID))
.列(列=>
{
//columns.Bound(c=>c.eff_date).Title(“生效日期”).Format(“{0:MM/dd/yyyy}”).Width(20);
columns.Bound(c=>c.eff_date).Title(“生效日期”).ReadOnly(true).Format(“{0:MM/dd/yyyyy}”).Width(20).Encoded(true)
.ClientTemplate(“”)
.校长职位(
@
)
.标题(“”)
.宽度(10)
.HeaderHtmlAttributes(新的{style=“text align:center”})
.HtmlAttributes(新的{style=“text align:center”});
columns.Bound(o=>o.eff_date).Width(20);
columns.Bound(c=>c.name_long).Title(“name long”).Width(20);
})
.DataBinding(DataBinding=>DataBinding.Ajax()
.选择(“GetOrgUID”、“Renan”))
.Pageable(paging=>paging.Style((GridPagerStyles.PageInput | GridPagerStyles.Numeric | GridPagerStyles.PageSizeDropDown | GridPagerStyles.NextPrevious)).Position(GridPagerPosition.Bottom).PageTo(1).PageSize(20))
.可滚动(滚动=>滚动高度(250))
.resizeable(resize=>resize.Columns(true))
)
脚本:

<script type="text/javascript" lanuage="javascript">   
    $('#checkAllRecords').click(function checkAll() {
        $("#RenanGrid tbody input:checkbox").attr("checked", this.checked);
    }); 
</script>

$(“#checkAllRecords”)。单击(函数checkAll(){
$(“#RenanGrid tbody input:checkbox”).attr(“checked”,this.checked);
}); 

其中一个原因可能是你太早了。此时可能无法将要附加事件的复选框插入DOM中

将代码包装到就绪事件中:

$(function() {
    $('#checkAllRecords').click(function checkAll() {
        $("#RenanGrid tbody input:checkbox").attr("checked", this.checked);
    });
});
不确定,为什么要使用严重过时的
jquery-1.7.1
。一两年前,剑道UI迁移到了jQuery3。当时我经历了地狱般的痛苦,因为他们推出了一些
kendo.syncReady
。我不确定这是否与你的问题有关。我通过
setTimeout
在事件堆栈末尾移动初始化逻辑:

$(function() {
    setTimeout(function() {
        $('#checkAllRecords').click(function checkAll() {
            $("#RenanGrid tbody input:checkbox").attr("checked", this.checked);
        });
    });
});

cc@RickL如果你有同样的问题,我会发布一个答案。我没注意到这是你编辑的一个很老的问题。