javascript - 使用 JQuery 如何将一组来自复选框的输入放入一个变量中?

标签 javascript jquery html

我想将这个 jquery 提交的数据放入一个我可以放入 html 的变量中。我正在使用追加按钮将 html 添加到我的表单,但无法弄清楚如何将 data 变量制作成每个复选框值的数组。

https://jsfiddle.net/soljohnston777/k5yc1y2a/2/

JQuery:

$(".checkboxadd").click(function(){
                $('[id^="add_policies_checkbox"]').each(function(i, v){
                  //alert(this.value);
                  if($(v).prop('checked')){
                  var data=$(v).val();
                  $("#div_to_add_this_checkbox_value").append("<input type=hidden name='pnpID_instructions' value=\'"+data+"\' />P&P #'s: "+data+"");}
                });
});//end ajaxifypolicies

HTML:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
  <input type="checkbox" value="1" id="add_policies_checkbox1"/>
  <input type="checkbox" value="2" id="add_policies_checkbox2"/>
  <input type="checkbox" value="3" id="add_policies_checkbox3"/>
  <button class="checkboxadd">Submit</button>
<div id="div_to_add_this_checkbox_value"></div>
<div> Check mark all 3 then hit submit, What I want is the output like an array:<br>P&P #'s:1,2,3 <br> (and the hidden value="1,2,3")
</div>

最佳答案

要将数组转换为字符串,您可以使用 array.join(',')

$(".checkboxadd").click(function() {
var data = [];
$('[id^="add_policies_checkbox"]').each(function(i, v) {  
  if ($(v).prop('checked')) {
    data.push($(v).val());
  }
});
console.log(data);

$("#div_to_add_this_checkbox_value").html('P&P #s:' + data.join(',') + "<input type='hidden' name='pnpID_instructions' value='"+data.join(',')+"' />");


});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="checkbox" value="1" id="add_policies_checkbox1" />
<input type="checkbox" value="2" id="add_policies_checkbox2" />
<input type="checkbox" value="3" id="add_policies_checkbox3" />
<button class="checkboxadd">Submit</button>
<div id="div_to_add_this_checkbox_value"></div>

关于javascript - 使用 JQuery 如何将一组来自复选框的输入放入一个变量中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38598814/

相关文章:

css - 为什么我的 div 的高度比 body 大?

javascript - Js 脚本从页脚中断

javascript - .bind() 在 javascript 中不返回 native 代码

javascript - 在javascript中提升

jquery - 为什么我的 jQuery 中允许退格键,无论我是否将其过滤掉?

jquery - 在 angularJS 中创建选择所有文本按钮

javascript - 如果值是使用 angularJS 的数字,则应用过滤器

jquery - 当 jQuery 事件表达式中有一个点时,它的含义是什么

jQuery:插入 DOM 元素并附加事件

html - 通过 CSS 显示为圆形时,DIV 背景颜色小于 div 大小