如何用jquery标记未选中复选框的值?

Posted

技术标签:

【中文标题】如何用jquery标记未选中复选框的值?【英文标题】:How to label value of unchecked checkboxes with jquery? 【发布时间】:2021-12-29 02:19:36 【问题描述】:

我有多个带有标签的复选框,我想获取未选中复选框的标签,并在提交表单时将这些标签值发送到 php 文件。 我正在这样做,但没有工作

$('.checkbox_0').click(function() 
  $("input:checkbox:not(:checked)").each(function() 
    $(this).next('label').text()
  );
);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type="checkbox" id="firstCheckbox" name="firstCheckbox" class="checked_0">
<label for="firstCheckbox">Attendance to shifts are regular and no last minute shift cancellation</label>

<input type="checkbox" id="secondCheckbox" name="secondCheckbox" class="checked_0">
<label for="secondCheckbox">Attendance to shifts are regular and no last minute shift cancellation</label>

【问题讨论】:

请分享您的html代码。 问题已更新,请立即查看html代码 代码中不存在带有“checkbox_0”的类名。从哪里获得? 而你的函数什么也没做。 @RajuAhmed 请再次检查 【参考方案1】:

您可以将取消选中的标签保存在单独的数组中,如下所示。

$(document).ready(function()
var unCheckedLabelText=[];
  $('.checkboxClass').click(function () 
     unCheckedLabelText=[];
        $("input:checkbox:not(:checked)").each(function()
            var text=$(this).next('label').text();
            unCheckedLabelText.push(text);
        );
    );
);

【讨论】:

【参考方案2】:

只需使用正确的类选择器并将其推入数组即可。

如何将其发送到 PHP 取决于您的实现。

$('.checked_0').click(function() 
  let result = [];
  $("input:checkbox:not(:checked)").each(function() 
    result.push($(this).next('label').text());
  );
  console.log(result);
);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type="checkbox" id="firstCheckbox" name="firstCheckbox" class="checked_0">
<label for="firstCheckbox">Attendance to shifts are regular and no last minute shift cancellation</label>

<input type="checkbox" id="secondCheckbox" name="secondCheckbox" class="checked_0">
<label for="secondCheckbox">Attendance to shifts are regular and no last minute shift cancellation</label>

【讨论】:

以上是关于如何用jquery标记未选中复选框的值?的主要内容,如果未能解决你的问题,请参考以下文章

如何用jquery将勾中复选框的那一行的数据自动添加到同页面的另一个表格

如何用jquery标记模式的复选框

如何用html做复选框全选中和全不选中

如何用复选框jQuery替换数组中的值

js如何用复选框取消,或者是默认不选,点下就选了

如何用JS控制复选框选中,element.checked