【问题标题】:how to check the value of checkboxes in each row of table dynamically using javascript or jquery如何使用javascript或jquery动态检查每行表中复选框的值
【发布时间】:2017-06-24 17:52:21
【问题描述】:

我有一个表,其中的值是从数据库中动态添加的,如下所示:

    var row = table.insertRow(i);
i = i+1;
// Insert new cells (<td> elements) at the 1st and 2nd position of the new <tr> element:
var cell1 = row.insertCell(0);
var cell2 = row.insertCell(1);
var cell3 = row.insertCell(2);
var cell4 = row.insertCell(3);
var cell5 = row.insertCell(4);
var cell6 = row.insertCell(5);
var cell7 = row.insertCell(6);
var cell8 = row.insertCell(7);
var cell9 = row.insertCell(8);
var cell10 = row.insertCell(9);
var cell11 = row.insertCell(10);

// Add some text to the new cells:
cell1.innerHTML = '$name';
cell2.innerHTML = '$name2';
cell3.innerHTML = '$lastname';
cell4.innerHTML = '$lastname2';
cell5.innerHTML = '$mellicode';
cell6.innerHTML = '$estekhdamnum';
cell7.innerHTML = '$email';
cell8.innerHTML = '$username';
cell9.innerHTML = '$password';
cell10.innerHTML = '$id';
var checkbox = document.createElement('INPUT');
checkbox.type = 'checkbox';
checkbox.name = 'checkbox[]';
checkbox.value = 'i-1';
cell11.appendChild(checkbox);

我想在表格末尾添加一个按钮,当我单击它时,它会检查所有复选框,识别复选框的行并进行一些查询。

$('tr').click(function(){

}); 

下面是当我点击它时,我想对选中的复选框进行查询的按钮。

<input type="submit" class="form-control" name = "karbar" value=""onclick="add_karbar()"/><br><br>

我认为我不应该在这里使用'tr',但我不知道如何识别复选框并查看它是否被选中并识别选中复选框的行。

提前感谢您的回答。

【问题讨论】:

  • 您需要在点击事件中使用.each() 来遍历复选框。 api.jquery.com/jquery.each
  • 请告诉我应该怎么做 我发送了我的按钮,我想知道应该写的确切功能是什么

标签: javascript jquery html checkbox


【解决方案1】:

希望这是您正在寻找的,

$("#check").click(function() {
  var index = [];
  $("#table tbody input[type='checkbox']:checked").each(function(el) {
    index.push($(this).closest('tr').index());
  });
  console.log(index)
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table id="table">
  <tbody>
    <tr>
      <td><input type="checkbox"></td>
    </tr>
    <tr>
      <td><input type="checkbox"></td>
    </tr>
    <tr>
      <td><input type="checkbox"></td>
    </tr>
    <tr>
      <td><input type="checkbox"></td>
    </tr>
    <tr>
      <td><input type="checkbox"></td>
    </tr>
    <tr>
      <td><input type="checkbox"></td>
    </tr>
    <tr>
      <td><input type="checkbox"></td>
    </tr>
    <tr>
      <td><input type="checkbox"></td>
    </tr>
    <tr>
      <td><input type="checkbox"></td>
    </tr>
  </tbody>
</table>
<input type="submit" id="check">

【讨论】:

    【解决方案2】:

    你可以这样做。

    // Click event on button
    $('#checker').click(function(){
      // iterate through all checkboxes that are checked
      $("input[type=checkbox]:checked").each(function () {
        // debugging purposes only
        console.log($(this).val() + " is checked");
        // Add your code here
      });
    }); 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <input type="checkbox" name="checkbox1" value="1" checked>1
    <input type="checkbox" name="checkbox2" value="2" checked>2
    <input type="checkbox" name="checkbox3" value="3" checked>3
    <button id="checker">Check</button>

    【讨论】:

    • 非常感谢。它有效,但我如何运行 php 代码以使用此代码连接到数据库?
    • 我不确定我是否理解。您的问题说您已经从数据库中获取数据。请显示您的 PHP 代码以及您要执行的操作。
    • $query = "UPDATE users SET admin = 1 WHERE id='value'"; $rss = mysql_query($query, $conn); if($rss){ echo("alert('成功更新');"); }else{ echo("alert('couldn't update)"); }
    • 这就是我想做的事情
    猜你喜欢
    • 2017-03-26
    • 1970-01-01
    • 2014-04-26
    • 2019-09-20
    • 2019-08-02
    • 1970-01-01
    • 2012-02-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多