Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.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
Javascript 复选框事件未使用jquery触发_Javascript_Jquery_Kendo Ui_Kendo Grid_Kendo Asp.net Mvc - Fatal编程技术网

Javascript 复选框事件未使用jquery触发

Javascript 复选框事件未使用jquery触发,javascript,jquery,kendo-ui,kendo-grid,kendo-asp.net-mvc,Javascript,Jquery,Kendo Ui,Kendo Grid,Kendo Asp.net Mvc,我在父网格中有复选框行,在子网格中也有复选框行。建筑是这样的 我在父网格中有四行,其中一列是复选框,对于每一个父行,我有一个子网格,其中有四行,还有一列是复选框 如果我单击父网格行中的复选框,我需要访问仅与此行相关的子网格列中的复选框,并且需要将该子网格的checked属性设置为true 为此,我访问父网格复选框,如下所示 这是javascript函数 <script type="text/javascript"> $('.chkbxq').live('click', f

我在父网格中有复选框行,在子网格中也有复选框行。建筑是这样的

我在父网格中有四行,其中一列是复选框,对于每一个父行,我有一个子网格,其中有四行,还有一列是复选框

如果我单击父网格行中的复选框,我需要访问仅与此行相关的子网格列中的复选框,并且需要将该子网格的checked属性设置为true

为此,我访问父网格复选框,如下所示

这是javascript函数

  <script type="text/javascript">
    $('.chkbxq').live('click', function (e) {
        alert('1'); // this alert is not firing 
        var checkchildgrid = $('#Gridparent').find(".k-detail-row").find('td.k-detail-cell').find('[type="checkbox‌​"]').is(':checked');
        alert(checkchildgrid);
        if ($(this).is(':checked')) {    
            checkchildgrid.attr('checked', 'checked');
        } else {
            checkchildgrid.attr('checked', false);
        }    
    });        
</script>

$('.chkbxq').live('click',函数(e){
警报('1');//此警报未触发
var checkchildgrid=$('#Gridparent').find(“.k-detail-row”).find('td.k-detail-cell').find('[type=“checkbox‌​"]').是(':checked');
警报(checkchildgrid);
如果($(this).is(':checked'){
checkchildgrid.attr('checked','checked');
}否则{
checkchildgrid.attr('checked',false);
}    
});        
这是层次结构网格代码

    @model IEnumerable<Topco.TopMapp.MVC.Models.CostPageSearch>
@{
    ViewBag.Title = "Index";
}

<h2>Index</h2>
@using (Html.BeginForm())
{ 
   @(Html.Kendo().Grid<Topco.TopMapp.MVC.Models.CostPageSearch>()
        .Name("Gridparent")
        .Columns(columns =>
        {
            columns.Template(@<text></text>).ClientTemplate("<input id='chqprnt' class= 'chkbxq' type='checkbox'/>").Width(30);
            columns.Bound(e => e.CostPage).Width(100);
            columns.Bound(e => e.Description).Width(100);
            columns.Bound(e => e.VendorName).Width(100);
            columns.Bound(e => e.BillTypeDirect).Width(100);
            columns.Bound(e => e.BillTypeWarehouse).Width(100);
            columns.Bound(e => e.VendorName).Width(100);

        })
        .Sortable()
        .Pageable()
        .Scrollable()
        .ClientDetailTemplateId("client-template")
        .HtmlAttributes(new { style = "height:480px;" })
        .DataSource(dataSource => dataSource
            .Ajax()
            .PageSize(6)
            .Read(read => read.Action("HierarchyBinding_Employees", "CostPageDisplay"))
        )
        .Events(events => events.DataBound("dataBound"))
)
    <script id="client-template" type="text/kendo-tmpl">
         @(Html.Kendo().Grid<Topco.TopMapp.MVC.Models.ItemsDescriptionModel>()
            .Name("grid_#=CostPage#")
            .Columns(columns =>
            {
                columns.Template(@<text></text>).ClientTemplate("<input id='checkbox'  class='chkbx' type='checkbox' />").Width(30);
                columns.Bound(o => o.ItemId).Width(100);
                columns.Bound(o => o.ItemDescription).Width(100);
                columns.Bound(o => o.BrandCode).Width(100);
                columns.Bound(o => o.PackSize).Width(100);
            })
           .DataSource(dataSource => dataSource
               .Ajax()
               .PageSize(5)
               .Read(read => read.Action("HierarchyBinding_Orders", "CostPageDisplay" , new { employeeID = "#=CostPage#" }))
           )
           .Pageable()
           .Sortable()
           .ToClientTemplate()
   )
    </script>
<script>
    function dataBound() {
        this.expandRow(this.tbody.find("tr.k-master-row").first());
        //alert('1');
    }
</script>
@model IEnumerable
@{
ViewBag.Title=“Index”;
}
指数
@使用(Html.BeginForm())
{ 
@(Html.Kendo().Grid())
.名称(“家长”)
.列(列=>
{
columns.Template(@).ClientTemplate(“”)宽度(30);
columns.Bound(e=>e.CostPage).Width(100);
columns.Bound(e=>e.Description).Width(100);
columns.Bound(e=>e.VendorName).Width(100);
columns.Bound(e=>e.BillTypeDirect).Width(100);
列.绑定(e=>e.BillTypeWarehouse).宽度(100);
columns.Bound(e=>e.VendorName).Width(100);
})
.Sortable()
.Pageable()
.Scrollable()
.ClientDetailTemplateId(“客户端模板”)
.HtmlAttributes(新的{style=“height:480px;”})
.DataSource(DataSource=>DataSource
.Ajax()
.页面大小(6)
.Read(Read=>Read.Action(“HierarchyBinding_Employees”,“CostPageDisplay”))
)
.Events(Events=>Events.DataBound(“DataBound”))
)
@(Html.Kendo().Grid())
.Name(“网格=成本页”)
.列(列=>
{
columns.Template(@).ClientTemplate(“”)宽度(30);
columns.Bound(o=>o.ItemId).Width(100);
columns.Bound(o=>o.itemsdescription).Width(100);
columns.Bound(o=>o.BrandCode).Width(100);
columns.Bound(o=>o.PackSize).Width(100);
})
.DataSource(DataSource=>DataSource
.Ajax()
.页面大小(5)
.Read(Read=>Read.Action(“HierarchyBinding_Orders”,“CostPageDisplay”,new{employeeID=“#=CostPage#”}))
)
.Pageable()
.Sortable()
.ToClient模板()
)
函数数据绑定(){
this.expandRow(this.tbody.find(“tr.k-master-row”).first());
//警报(“1”);
}
但当我点击父网格中的复选框时,点击事件不会触发

请任何人提出任何关于这个问题的想法和解决方案,我将非常感激

非常感谢

编辑:请看下面的图片,这是我放置复选框的地方,单击该复选框不会触发事件


如果有帮助,请参阅以下内容:

 <script type="text/javascript">

   $('.chkbxq').on('click', function (e) {

    alert('1'); // this alert is not firing 

    var checkchildgrid = $('#Gridparent').find(".k-detail-row").find('td.k-detail-cell').find('[type="checkbox‌​"]').prop('checked');
    alert(checkchildgrid);

    if ($(this).prop('checked')) {    
        checkchildgrid.prop('checked', 'checked');
    } else {
        checkchildgrid.prop('checked', false);
    }    
});        

$('.chkbxq')。在('click',函数(e)上{
警报('1');//此警报未触发
var checkchildgrid=$('#Gridparent').find(“.k-detail-row”).find('td.k-detail-cell').find('[type=“checkbox‌​“]”).prop('checked');
警报(checkchildgrid);
if($(this.prop('checked')){
checkchildgrid.prop('checked','checked');
}否则{
checkchildgrid.prop('checked',false);
}    
});        

希望有帮助。

试试这个

 $('#Gridparent').on("click", ".chkbxq", function (e) {

       var selected = $(this).is(':checked');

        var grid = $("#grid12").data("kendoGrid");


        if (selected == true) {

            var check = $('.k-detail-row').find('td.k-detail-cell').find('div.k-grid').find('table').find('tbody').find('[type="checkbox"]').attr('checked', true);
            var asd = check.is(':checked');
            alert(asd);
        }

        });

使用网格单击。

这是我认为应该如何编码的-免责声明我根本不知道剑道

如果我们需要在您编写时处理复选框,我们可以这样做

$(function() {
  $('.chkbxq').on('click', function (e) {
    var checked = this.checked;
    $('#Gridparent').find(".k-detail-row").find('td.k-detail-cell').find('[type="checkbox‌​"]').each(function()
      this.checked=checked; // toggle
    });    
  });    
});        
如果内容是AjaxIn,则需要

$(function() {
  $("#Gridparent").on('click','.chkbxq', function (e) {
    var checked = this.checked;
    $(this).find(".k-detail-row").find('td.k-detail-cell').find('[type="checkbox‌​"]').each(function()
      this.checked=checked; // toggle
    });    
  });    
});        
注意。在dom中查找所有作品,因此您可能只需要

$(this).find('[type="checkbox‌​"]').each(function()

jquery 1.9
中删除live,请使用
.on
代替,并在
$(function(){--}中换行
我正在使用jquery 1.7.1.js版本..但我仍然无法触发该事件…@MohammadAdil请您看看我放置checbox的图像,我正在尝试触发选中的事件,因为我在ie8中遇到错误,比如对象不支持此属性或方法..我已将调试器放入此单击函数中,该函数是我得到了那个错误,现在我删除了调试器,我在ie8中并没有得到任何错误…但我也并没有得到那个警报…$('.chkbxq'),如果您更改为$('#chqprnt'),则不会得到这个警报,在这种情况下也不会触发???谢谢,我可以触发该事件,但在侧面,我无法设置这些事件为真…请帮助此函数不起作用…
$(this).find(.k-detail-row”).find('td.k-detail-cell').find('[type=“checkbox])‌​“]”)。每个(function()
No都没有看到呈现的html。你能用实际生成的html生成一个JSFIDLE.net吗?Jaimin我遇到了同样的问题,就像我在父网格行中选中复选框一样,它会选中子网格行复选框(这里没有问题),但它也会选中所有其他父网格行复选框(问题在这里)我还想问一个问题,我无法获得子网格的行数,请您对此提供帮助…嗯,我已经纠正了一个,现在它工作正常…我需要循环子网格中的所有行,以便获得子网格的行数…我尝试了这些,但dint工作
var childrowscont=$(“.k-detail-row”).find('td.k-detail-cell').find('div.k