我有此复选框列表

javascript - 自动检查复选框列表-LMLPHP

就像使用“ Ctrl”按钮选择文件一样,我想举个例子,当我按下“ Ctrl”按钮选中第一个复选框,然后选中第二个复选框并且始终按下“ Ctrl”时,这些复选框之间的其他复选框将被自动检查
经过多次搜索,我发现我应该使用“ ng-keyup”方法
您能知道我该怎么做吗?
感谢帮助

最佳答案

您可以做的是跟踪所有输入和最后单击的输入。
然后在下一次单击上检查是否按下了Shift键,然后将输入之间的所有标记都标记为已选中。

// last input checked index variable, initialize with null
var lastChecked = null

//keep all inputs saved
var inputs = document.querySelectorAll("input")

// on each click check if shift is pressed
function handleClick(e, index){
  if(e.shiftKey){
    markSelected(lastChecked, index)
  }
}


这是Codepen上的示例,该示例负责标记两种方式(从开始到结束以及相反)并处理最后选择的输入的簿记

Codepen example

10-06 07:42
查看更多