通过jquery发送的值未在表中提交

时间:2017-05-23 12:05:54

标签: javascript php jquery mysql codeigniter

我一直试图理解错误的原因......但我仍然无能为力。任何帮助将不胜感激。

以下代码插入表单元素

<?php foreach ($coal_type as $coal) {?>
<div class="checkbox">                                                    
    <label>
        <input type="checkbox" name="usage_checkbox[]"  class="usage_checkbox" 
         value="<?php echo $coal['coal_type_id']; ?>">
        <?php echo $coal['coal_type']; ?>
    </label>
</div>
<?php } ?>

此数据将发送到执行以下代码的表单处理程序

obj_params.usage_checkbox = $("input[type='checkbox'][name='usage_checkbox[]']:checked").val();

此数据被发送到控制器(我正在使用codigniter)插入它

$i = 0;
 foreach ($this->input->post('usage_checkbox') as $key) {
      $coal_type[$i] = $key;
      $i++;
 }
 $coal_type[$i] = $this->input->post('other_usage');
 $c_type = implode(',', $coal_type);
 $arr_to_insert = array('type_of_coal' => $c_type,);
 $insert_id = $this->common_model->insertRow($arr_to_insert,'ekyc_details');

现在,当我提交时,没有插入任何值。我已经尝试了一切,但我无法弄清楚出了什么问题。

1 个答案:

答案 0 :(得分:0)

这里从复选框中获取多个值。因此,您需要序列化以通过jquery发送值。以下代码将帮助您。

obj_params.usage_checkbox = $("input[name='usage_checkbox[]']:checked").serialize();