Javascript 用户必须检查n';将启用n-1以外的第项进行检查
我已使用全选创建复选框。它工作得很好。现在我想我将能够选中“全选”,但不能选择项目1、项目2或项目3。我应该先选择项目5,然后只有项目4将启用以选择3,2,1将保持禁用状态,在选择项目5和项目4后,项目3将启用以选择,项目2和1将保持禁用以选择状态。它将持续到1。 我该怎么做请有人帮帮我Javascript 用户必须检查n';将启用n-1以外的第项进行检查,javascript,jquery,Javascript,Jquery,我已使用全选创建复选框。它工作得很好。现在我想我将能够选中“全选”,但不能选择项目1、项目2或项目3。我应该先选择项目5,然后只有项目4将启用以选择3,2,1将保持禁用状态,在选择项目5和项目4后,项目3将启用以选择,项目2和1将保持禁用以选择状态。它将持续到1。 我该怎么做请有人帮帮我 $(文档).ready(函数(){ $(“#全选”)。在('单击',函数()上{ 如果(选中此项){ $('.cbox')。每个(函数(){ this.checked=true; }); }否则{ $('.c
$(文档).ready(函数(){
$(“#全选”)。在('单击',函数()上{
如果(选中此项){
$('.cbox')。每个(函数(){
this.checked=true;
});
}否则{
$('.cbox')。每个(函数(){
此项检查=错误;
});
}
});
$('.cbox')。在('click',function()上{
如果($('.cbox:checked')。长度==$('.cbox')。长度){
$('select#all').prop('checked',true);
}否则{
$('select'u all').prop('checked',false);
}
});
});代码>
- 全选
- 项目1
- 项目2
- 项目3
- 项目4
- 项目5
总金额:
您可以使用以获取当前选中复选框的索引
$(文档).ready(函数(){
$('.cbox:not(:last)').prop('disabled',true);
$(“#全选”)。在('change',函数(e)上{
var isChecked=此项已检查;
$('.cbox').get().reverse().forEach(函数(ele,索引){
ele.checked=已检查;
$(ele.trigger('change');
});
});
$('.cbox')。关于('change',函数(e){
如果(选中此项){
var sIndex=(+$(this).index('.cbox')-2);
变量selCriteria=(sIndex<0)?'.cbox':'.cbox:gt('+sIndex+');
$(selCriteria).prop('disabled',false);
}否则{
var sIndex=+$(this.index('.cbox');
var selCriteria='.cbox:lt('+sIndex+');
$(selCriteria).prop({'disabled':true,'checked':false});
$('.cbox:last').prop('disabled',false);
}
如果($('.cbox:checked')。长度==$('.cbox')。长度){
$('select#all').prop('checked',true);
}否则{
$('select'u all').prop('checked',false);
}
var-tot=0;
$('.cbox:checked').get().forEach(函数(ele,index){
tot+=parseFloat(元素值);
});
$('总成本').val(总成本);
});
});代码>
- 全选
- 项目1
- 项目2
- 项目3
- 项目4
- 项目5
总金额:
P.S.:一个ul
-标签不能包含输入
元素。替换此标记或将其嵌套到li
-标记有效:)非常感谢,非常感谢#gaetanoMI有个问题!当我通过值时,我有个问题!当我传递值时。1.如果勾选“全选”,则取消勾选“第5项”而不是“总金额”结转值,但应为空。2.如果我选中“第5项”而不是“第4项”,然后取消选中“第5项”而不是“总额”字段,则“第4项”的携带值应为空。你能再查一下我的代码吗。这是链接:和我想要的完全一样……我真的非常感谢你的帮助。非常感谢。