根据 Javascript 中的复选框显示或消失的按钮

Button to appear or disappear based on checkboxes in Javascript

我在 table 中有一列包含复选框,以便用户可以单击多行并删除数据。当使用 for 循环单击框时,我设法使删除按钮出现。我正在苦苦挣扎的是当用户取消选中所有框时如何使按钮消失。我把头撞在墙上的时间比我想承认的要长,而且我还没有发现以前的任何有帮助的问题。在此先感谢您的任何输入!

function memDeleteButton() {
    // Pass the checkbox name to the function
    let checkboxes = $('input[name=members]:checked');
    let deleteButton = document.getElementById("memDeleteSelected");

    // loop over all of the checkboxes
    for (let i = 0; i < checkboxes.length; i++) {

        if (checkboxes[i].checked = true) {
            deleteButton.style.display = "inline";

        }
        else if (checkboxes[i].checked = false) {
            deleteButton.style.display = "none";
        }
    }
}

let checkboxes = $('input[name=members]:checked');

您只选择了此处选中的复选框。

document.getElementById("memDeleteSelected");

如果您使用 JQuery 那么为什么不保持一致。

checkboxes[i].checked = true

您选中此语句的复选框。 = 这是赋值运算符。您可以在此处使用相等运算符 ===

checkboxes[i].checked returns 一个布尔值,因此您可以删除相等运算符,因为这将为真或假。

function memDeleteButton() {
  let checkboxes = $('input[name=members]'),
    deleteButton = $('#memDeleteSelected');

  for (let i = 0; i < checkboxes.length; i++) {
    if (checkboxes[i].checked) {
      deleteButton.show();
    } else if (!checkboxes[i].checked) {
      deleteButton.hide();
    }
  }
}