jquery serialize和serializeArray方法

963 阅读1分钟
$('form').serialize();
$('form').serializeArray();
  1. 通过serialize() 得到的是查询字 符串类型;

  2. 通过 serializeArray()得到的是数组类型。

  3. 结果都可以直接当做Ajax请求的参数。 注意

  4. 在必须具有 <form>...</form> 标签的前提下,才能使用 $('form').serialize() 或者 serializeArray() 方法

  5. 各项表单元素(input、select、textarea)必须具备 name 属性

  6. 两个方法均不能获取 禁用状态(disabled) 的输入框的值。

  7. 两个方法均不能获取文件域<input type="file" />)的值。

  8. 两个方法都获取隐藏域<input type="hidden" />)的值。

html
  <form action="">
    书名:<input type="text" name="bookname"  value="abc"><br />
    <input type="hidden" name="id" value="123">
    作者:<input type="text" name="author"><br />
    出版社:<input type="text" name="publisher"><br />
    <button type="submit">添加</button>
  </form>
  
 scrpit
 
     $('form').on('submit', function (e) {
          e.preventDefault();
        使用语法 :$('表单').serialize();
          let data = $(this).serialize();  
    data  //bookname=abc&id=123&author=1&publisher=1
          name属性相当于键 input值相当于值
      });