serializeArray 与 serialize

Posted skinchqqhah

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了serializeArray 与 serialize相关的知识,希望对你有一定的参考价值。

 

serialize()序列表表格内容为字符串,用于 Ajax 请求。

serializeArray()序列化表格元素 (类似 ‘.serialize()‘ 方法) 返回 JSON 数据结构数据。


.serializeArray()

编码一个form元素集合为一个“name属性值/value属性值”的数组。json结构,如:
[
  {
    name: a
    value: 1
  },
  {
    name: b
    value: 2
  },
  {
    name: c
    value: 3
  },
  {
    name: d
    value: 4
  },
  {
    name: e
    value: 5
  }
]

.serialize()

编码一个form元素集合为有充的字符串。字符串为标准的url编码。如:
a=1&b=2&c=3&d=4&e=5


<form>
    <!-- 能够被json数组、url字符串据提取数据类型 -->
	<input type="text" name="a" value="1" id="a" />
	<input type="text" name="b" value="2" id="b" />
	<input type="hidden" name="c" value="3" id="c" />
	<textarea name="d" rows="8" cols="40">4</textarea>
	<select name="e">
            <option value="5" selected="selected">5</option>
            <option value="6">6</option>
            <option value="7">7</option>
  	</select>
    	<input type="checkbox" name="f" value="8" id="f1" checked="checked" />
        <input type="checkbox" name="f" value="9" id="f2" />
        <input type="radio" name="g" value="10" id="g1"/>
	<input type="radio" name="g" value="11" checked="checked" id="g2"/>
        <input type="password" name="h" maxlength="8" value="h" />
    <!-- 不能够被json、url字符串据提取数据类型 -->   
        <input type="submit" name="i" value="Submit" id="i" />
        <input type="button" name="j" value="Click me" onclick="msg()" />
        <input type="file" name="k" /><br />
        <input type="reset" value="Reset"  name="l" />
        <input type="image" src="/i/eg_submit.jpg" alt="Submit" />
</form>
<p><tt id="results"></tt></p>

<script>

    function showValues() {
      var fields = $(":input").serializeArray();
      $("#results").empty();
      jQuery.each(fields, function(i, field){
        $("#results").append(field.value + " ");
      });
    }

    $(":checkbox, :radio").click(showValues);
    $("select").change(showValues);
    showValues();
</script>

<script>
    function showValues() {
      var str = $("form").serialize();
      $("#results").text(str);
    }
    $(":checkbox, :radio").click(showValues);
    $("select").change(showValues);
    showValues();
</script>

再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow





以上是关于serializeArray 与 serialize的主要内容,如果未能解决你的问题,请参考以下文章

@RequestBody与serialize()serializeArray()拼接Json 妙用总结

[JQuery]jQuery中serializeArray方法的使用及对象与字符串的转换

jQuery ajax - serializeArray() 方法

如何从 PHP 中的 serializeArray 获取 POST 值?

使用 .serializeArray() Javascript 时如何自定义键值对?

Jquery SerializeArray 和推送对象列表