到目前为止,这是我检查所有复选框的内容,这些复选框位于下拉列表中。
_popup: function () {
e.fn._popup.call(this), this.popup.one("open", function () {
this.wrapper = c.wrap(this.element).addClass("km-popup")
});
// Modify popup to include a "Select All" checkbox.
$(this.popup.element).children("ul:first-child").before("<ul class='k-list k-reset' unselectable='on' style='overflow: auto;'><li class='k-item' unselectable='on'><input id='selectall' type='checkbox' /><span>Selected</span></li></ul><hr/>");
// Attach event handler to "Select All checkbox.
$("#selectall").bind('change', function(){
if($(this).prop('checked')){
$(".checkbox").prop('checked', true);
}else{
$(".checkbox").prop('checked', false);
}
});
这会更新复选框,使其在屏幕上可视化地显示为全部选中或取消选中。我有一个按钮告诉我 View 模型的状态,即复选框是真还是假。问题是,随着 selectall 工作并检查所有内容,viewmodel 不会随着这些更改而更新,即每次单击全选复选框时,无论是否选中它们,单击测试按钮时一切都保持为 false。单击全选时,我需要一些方法来更新 View 模型。整个程序非常复杂,但如果您需要更多信息来理解我的问题,请告诉我。
这是我的 View 模型中的内容
var viewModel = kendo.observable({
options: [{ text: "test1", value: 1, selected: false },
{ text: "test2", value: 2, selected: false },
{ text: "test3", value: 3, selected: false },
{ text: "test4", value: 4, selected: false }
]
});
最佳答案
尝试这样的事情
$("#selectall").bind('change', function(){
if($(this).prop('checked')){
$(".checkbox").not(':checked').click();
}else{
$(".checkbox:checked").click();
}
});
关于javascript - 检查全部 jquery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12290464/