jQuery使用serialize(),serializeArray()方法取得表單數據+字符串和對象類型兩種表單提交的方法
阿新 • • 發佈:2018-01-03
var fun .ajax clas copy art 表單提交 post 姓名
[html] view plain copy
轉載自: http://blog.csdn.net/zqtsx/article/details/28655717
原始form表單值獲取方式(手動):
[javascript] view plain copy- $.ajax({
- type: "POST",
- url: "ajax.php",
- data: "Name=摘取天上星&position=IT技術",
- success: function(msg){alert(msg);},
- error: function(error){alert(error);}
- });
JQ serialize()方法取值:
[javascript] view plain copy- $.ajax({
- type: "POST",
- url:"ajax.php",
- data:$(‘#formID‘).serialize(),// 要提交的表單
- success: function(msg) {alert(msg);},
- error: function(error){alert(error);}
- });
serialize()序列化表單實例:
- <script type="text/javascript" src="jquery-1.9.1.min.js"></script>
- <script type="text/javascript">
- $(function(){
- $("#button").click(function(){
- alert($("#formID").serialize());
- });
- });
- </script>
- <form id="formID">
- 姓名 <input value="摘取天上星" name="Name" />
- 職位 <input value="IT技術" name="position" />
- <input id="button" value="提交" type="button" />
- </form>
將form中的值轉換為鍵值對:
[javascript] view plain copy
- // 如:{Name:‘摘取天上星‘,position:‘IT技術‘}
- // ps:註意將同名的放在一個數組裏
- function getFormJson(form) {
- var o = {};
- var a = $(form).serializeArray();
- $.each(a, function () {
- if (o[this.name] !== undefined) {
- if (!o[this.name].push) {
- o[this.name] = [o[this.name]];
- }
- o[this.name].push(this.value || ‘‘);
- } else {
- o[this.name] = this.value || ‘‘;
- }
- });
- return o;
- }
鍵值對方式的AJAX調用:
[javascript] view plain copy- //調試調用
- $(function(){
- $("#button").click(function(){
- alert(getFormJson("#formID"));
- });
- });
- //Ajax提交
- $.ajax({
- type: "POST",
- url:"ajax.php",
- data:getFormJson($("#formID")),//表單數據JSON格式的函數參數裏填寫表單的ID或要提交的表單
- dataType: ‘json‘,
- success: function(msg) {alert(msg);},
- error: function(error){alert(error);}
- });
實例中通用的HTML表單:
[html] view plain copy- <form id="formID">
- 姓名 <input value="摘取天上星" name="Name" />
- 職位 <input value="IT技術" name="position" />
- <input id="button" value="提交" type="button" />
- </form>
jQuery使用serialize(),serializeArray()方法取得表單數據+字符串和對象類型兩種表單提交的方法