jeudi 30 avril 2015

Kendo Listview, added checkboxes, added a select all, will check and uncheck all once, will not check all again.

I would like some help with this. I have a Kendo Listview:

 <form id="frmChk">
        @(Html.Kendo().ListView<thieme_ws3.Models.QaTestModel>(Model)
        .Name("testList")
        .TagName("fieldset")
        .HtmlAttributes(new { @class = "panel panel-primary panel-body" })
        .ClientTemplateId("template")
        )
        <br />
    </form>

Where I have added checkboxes to the information brought in:

<script type="text/x-kendo-tmpl" id="template">
        <div class="col-md-5">
        @Html.CheckBox("cb_#:Id#", new { @class = ".item", id = "cb_#:Id#" })  #=Name#
        </div>
    </script>

I have added a select all checkbox:

 <label id="checkAll" class="checkbox">
        <input type="checkbox" id="all" name="all" /> Select all
    </label>

And added this to fire it:

 $('#all').on('click', function (e) {
    //alert("I'm clicked!" + this.checked);
    var testList = $("#testList").data("kendoListView");
    var dataItems = testList.dataItems();

    //do thought to wrap the loop in a do while, caused the browser to stop
    {

        for (i = 0; i <= dataItems.length - 1; i++) {
            //alert(dataItems[i].id);
            var cb = $("#cb_" + dataItems[i].Id);
            if (this.checked) {
                cb.attr("checked", "checked");
            }
            else {

                (cb.removeAttr("checked"));
            }

        }
    }
    })

It will work once, checking all boxes and unchecking all boxes but when I check the select all again, it will not select the others. I am certain it is something small I am overlooking, please help.




Aucun commentaire:

Enregistrer un commentaire