【问题标题】:Pass checkbox multiple array to php using ajax使用ajax将复选框多个数组传递给php
【发布时间】:2017-10-15 14:00:43
【问题描述】:

我尝试将复选框数组传递给 ajax。我的html代码:

   {foreach from =$allTaskTypes key=typeId item=type}
                  <div class="mainDivTaskType">
                      <input class="task_types" value="{$typeId}" name="task_types_category[{$typeId}][]" type="checkbox">{$type.type_name}<br>
                      {if $type.subtags neq ''}
                          <div class="taskTypesLeadNoteTagDiv">
                              {foreach from =$type.subtags key=tagId item=tag}
                                  <input  value="{$tag.id}" class="task_types" type="checkbox" name="task_types_category[{$typeId}][task_types_tags][]">{$tag.name}<br>
                              {/foreach}
                          </div>
                      {/if}
                  </div>
              {/foreach}

所以,html的例子是:

<div class="mainDivTaskType">
    <input class="task_types" value="42" name="task_types_note_category[42][]" type="checkbox">
u7utu
<br>
</div>
<div class="mainDivTaskType">
<input class="task_types" value="43" name="task_types_note_category[43][]" type="checkbox">
New1
<br>
<div class="taskTypesLeadNoteTagDiv">
<input class="task_types" value="28" name="task_types_note_category[43][task_types_tags][]" type="checkbox">
tag1
<br>
<input class="task_types" value="29" name="task_types_note_category[43][task_types_tags][]" type="checkbox">
tag2
<br>
</div>
</div>

我需要将数组从 js 传递给 php。 如果我使用提交,我会得到如下数组:

    Array
(
    [42] => Array
        (
            [0] => 42
        )

    [43] => Array
        (
            [task_types_tags] => Array
                (
                    [0] => 28
                    [1] => 29
                )

        )

)

如何使用 ajax 生成这样的数组?

我试过了:

   var array = [];
      $('.task_types:checked').each(function() {
          array.push($(this).val());
      });

但这是错误的数组格式,如 [42,28,29]

我该如何解决这个问题?

【问题讨论】:

    标签: javascript php jquery arrays ajax


    【解决方案1】:

    试试这个:

    $(".task_types:checked").serialize();
    

    【讨论】:

      猜你喜欢
      • 2013-09-06
      • 2019-06-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-22
      • 2012-12-03
      • 2011-07-09
      • 2020-04-09
      相关资源
      最近更新 更多