Ajax序列化不获取表单的所有值

时间:2014-08-25 10:54:22

标签: php jquery ajax forms serialization

所以我form有一些输入字段,并且是通过Ajax Serialize提交的。 问题是它没有在serialize output中获取表单的所有值。我知道我为每个字段提供了Name,这是我的HTML代码:

<form action="" id="BindData">
        <input type="hidden" name='style_id' id='style_id' value="<?php echo $model->style_id; ?>">  
        <div class="form-group">
            <div class="input-group">
                <span class="input-group-addon">Select Category:</span>
                <select id="category" name="cat_id" class="form-control">
                    <option value="">Select Category</option>
                    <?php foreach($all_categories['models'] as $Category) { ?>    
                    <option value="<?php echo $Category->category_id; ?>"><?php echo $Category->category_name;  ?></option>
                    <?php } ?>
                </select>
            </div>
        </div>
        <div class="form-group tr_sub_cat" style="display:none;">
            <div class="input-group">
                <span class="input-group-addon">Select SubCategory:</span> 
            </div>
            <div class="input-group">
                <span class="sub_category"></span>
            </div>
        </div>
        <div class="form-group">
            <div class="input-group">
                <span class="input-group-addon">Weightage:</span>
                <div class="col-xs-1">
                    <input type="text" name="weightage" id="weightage" class="form-control" value="0"><span class="badge bg-red">%</span>
                </div>
            </div>
        </div>
<button type="button" class="btn btn-primary addBind pull-left">Submit</button>
 </form> 

在我的上方代码中序列化方法没有采用cat_id&amp;的值。 weightage虽然我给了他们name。 从cat_id选择框加载的子类别将出现序列化数据,并且权重值的变化不会出现。 这是我的序列化输出:

style_id=1&cat_id=&sub_cat=95&weightage=0 

cat_id为空,weightage仍为0,而不是更新的{{1}}。 提前谢谢。

1 个答案:

答案 0 :(得分:0)

您可以使用val函数从输入中收集数据:

var cat =  $("#cat_id").val();
var weightage =  $("#weightage").val();

你不应该为每个领域手动完成。序列化的目的是什么。 您可以使用上面的代码进行调试,以检查是否保存在变量中的正确表单值。