如何通过ajax返回一个数组

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (377)

我试图通过ajax返回所有选中的复选框的值。我无法确定如何将值作为参数传递。

HTML CHECKBOXES

<li><input class="customer_sales_value" id="customer_sales_1" type="checkbox" value="1"><label for="customer_sales_1">James</label></li>
<li><input class="customer_sales_value" id="customer_sales_2" type="checkbox" value="2"><label for="customer_sales_2">Jack</label></li>
<li><input class="customer_sales_value" id="customer_sales_3" type="checkbox" value="3"><label for="customer_sales_3">John</label></li>
<button id="customer_pop_share_btn">submit</button>

JQUERY

$('#customer_pop_share_btn').click(function(){
    sales_list = each($('.customer_sales_value').val());
    $.ajax({
        type    : 'POST',
        url     : '//'+base_url+'/ajax2/timeline-share.php',
        data    : 'sales_list='+sales_list,
        success : function(data) {
     });    
 });

我的jquery是问题,我想我想要这样做的方法是将复选框值列表传递给变量,如sales_list = 1,2,3我该怎么做?

提问于
用户回答回答于

使用选中框的值的数组.map()

在PHP脚本中,$_POST['sales_list']如果选中任何框,则将是值的数组; 如果没有选中任何一个框,则根本不会设置该变量。

$('#customer_pop_share_btn').click(function() {
  var sales_list = $('.customer_sales_value:checked').map((i, el) => el.value).get();
  $.ajax({
      type: 'POST',
      url: '//' + base_url + '/ajax2/timeline-share.php',
      data: {
        sales_list: sales_list
      },
      success: function(data) {});
  });
});

扫码关注云+社区

领取腾讯云代金券