jquery serialize返回一个空字符串

时间:2017-02-23 14:24:29

标签: javascript jquery html

使用serialize() jQuery函数时遇到问题:

<form role="form" id="enter-image-detail-form" method="post">
  <div class="form-group">
    <input type="text" class="form-control" id="image-name" placeholder="Enter image name" value="test">
  </div>
  <button type="submit" class="btn btn-default btn-success btn-block">Save</button>
</form>
$('body').on('submit', '#enter-image-detail-form', function(e){
  console.log( $(this).serialize() );
  e.preventDefault();
});

返回一个空字符串。提前谢谢。

1 个答案:

答案 0 :(得分:5)

您需要为表单元素添加name属性,因为serialize()方法会生成具有name属性的表单元素。

<input name="image-name" type="text" class="form-control" id="image-name" placeholder="Enter image name" value="test">
<!--   ^^^^^^^^^^^^^^^^^                                                  --->

来自docs

  

要使表单元素的值包含在序列化字符串中,该元素必须具有name属性。