Javascript 单击检查所有按钮问题
我有一个全选按钮,点击它会选中所有的复选框。但在我的显示页面上,我有30000个复选框,点击“全选”按钮,页面将无响应。有人能帮忙吗Javascript 单击检查所有按钮问题,javascript,html,css,Javascript,Html,Css,我有一个全选按钮,点击它会选中所有的复选框。但在我的显示页面上,我有30000个复选框,点击“全选”按钮,页面将无响应。有人能帮忙吗 function js_select_all(btn,theForm){ if (btn.value == "Check All") { var checkval = "checked"; if (js_one_row(theForm.circSelected)) { theForm.circSelecte
function js_select_all(btn,theForm){
if (btn.value == "Check All") {
var checkval = "checked";
if (js_one_row(theForm.circSelected)) {
theForm.circSelected.checked = checkval;
} else {
for (var i=0; i < theForm.circSelected.length; i++){
theForm.circSelected[i].checked = checkval;
}
}
btn.value ="Uncheck All";
}else {
if (js_one_row(theForm.circSelected)) {
theForm.circSelected.checked = false;
} else {
for (var i=0; i < theForm.circSelected.length; i++){
theForm.circSelected[i].checked = false;
}
}
btn.value = "Check All";
}
}
函数js\u select\u all(btn,表单){
如果(btn.value==“全部检查”){
var checkval=“checked”;
如果(js_一行(选中的格式圈)){
form.circSelected.checked=checkval;
}否则{
对于(var i=0;i
soembody可以帮助我以最快的方式获得结果吗?我正在开发一个只支持HTML、CSS和JS的webtoolkit。将任务分成小块,并使用setTimeout在短暂延迟后运行它们
这允许浏览器保持响应。假设勾选框都立即改变状态是不必要的?用户可能会很高兴计算机正在打勾,即使这需要一些时间,因为否则用户将不得不自己做
下面是一个例子,我们将它分成100个复选框的块,每个块以1000毫秒的间隔完成
const chunkSize=100;
const intervalBetweenChunksMs = 1000;
for (var i=0; i < theForm.circSelected.length ; i+=chunkSize) {
console.log("Creating chunk starting at",i)
setTimeout(function(start){for(var j=start; j<Math.min(i+chunkSize,33); j++)
{
console.log("Doing item number", j);
theForm.circSelected[j].checked = checkval;
}
}(i),(1 + theForm.circSelected.length/chunkSize)*intervalBetweenChunksMs )
}
const chunkSize=100;
const intervalBetweenChunksMs=1000;
对于(var i=0;i setTimeout(函数(启动){for(var j=start;jBetter show demo working snippet。你不可能真的有30000条记录并对其进行JQuery处理。它肯定会挂起并使浏览器无响应。我建议,每当单击“全选”时,将其传递给服务器并在服务器端处理,而不是选中所有复选框。