【问题标题】:How do I serialize checked checkboxes?如何序列化选中的复选框?
【发布时间】:2013-03-04 18:52:14
【问题描述】:

我有一个带有复选框的表格,由于某种原因不包含表格。我想通过附加到主表单序列化数据来获取所有选中的复选框并将它们发送到服务器。这是我的做法:

function f1(){
  var data = '';
  $(".chk").each(function(){
    if($(this).is(":checked")){
      data += "" // what should be here?
    }
  });

 return data;
}

一个复选框看起来像:

<input type="checkbox" class="chk" name="items[]" value="123">

其中 value 是唯一的 id。

我猜data += 应该像items[0]=1&amp;item[1]=13&amp;item[2]=445

那么我该怎么做呢?

【问题讨论】:

  • 我不是 PHP 专家,但我的印象是它能够构建数组而无需指定索引,即 items[]=1&amp;items[]=13&amp;items[]=445 会给出您期望的结果。
  • @FrédéricHamidi 客户端代码是 JavaScript,而不是 PHP。服务器端是 Ruby/Sinatra。与PHP无关。

标签: javascript ruby sinatra


【解决方案1】:
function f1(){
  var data = '';
  var i = 0;
  $(".chk").each(function(){
    if($(this).is(":checked")){
      if(i==0){
       data+="?items["+i+"]="+$(this).val();
      }else{          
       data+="&items["+i+"]="+$(this).val();
      }
    }
i++;
  });

 return data;
}

【讨论】:

    猜你喜欢
    • 2021-05-20
    • 2011-07-04
    • 2011-11-12
    • 1970-01-01
    • 2010-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-06
    相关资源
    最近更新 更多