form表單序列化為Jquery物件

2022-03-13 11:22:35 字數 3484 閱讀 6896

1

<

form

id="dailyfinancial"

>

@*class="form-inline"*@

2<

div

class

="form-group"

>

3<

label

for="financialtype"

>記賬型別

label

>

4<

select

class

="form-control"

id="financialtype"

name

="financialtype"

>

5<

option

value

="1"

>支出

option

>

6<

option

value

="2"

>收入

option

>

7select

>

8div

>

9<

div

class

="form-group"

>

10<

label

for="financialtype"

>收支型別

label

>

12<

select

class

="form-control"

id="type"

name

="type"

>

13<

option

value

="10"

>吃飯

option

>

25select

>

26<

p class

="help-block"

style

="color:red"

>收支型別->花錢和賺錢方式

p>

27div

>

28<

div

class

="form-group"

>

29<

label

for="money"

>金額

label

>

30<

input

type

="text"

class

="form-control"

id="money"

name

="money"

placeholder

="人民幣"

>

31div

>

32<

div

class

="form-group"

>

33<

label

for="detail"

>收支明細

label

>

34<

textarea

class

="form-control"

rows

="2"

id="detail"

name

="detail"

>

textarea

>

35div

>

36<

div

class

="form-group"

>

37<

label

for="paytype"

>支出型別

label

>

39<

select

class

="form-control"

id="paytype"

name

="paytype"

>

40<

option

value

="0"

>信用卡

option

>

46select

>

48div

>

49<

div

class

="form-group"

>

50<

label

for="remark"

>備註

label

>

51<

textarea

class

="form-control"

rows

="2"

id="remark"

name

="remark"

>

textarea

>

52div

>

53<

div

class

="form-group"

>

54<

label

for="remark2"

>備註

label

>

55<

textarea

class

="form-control"

rows

="2"

id="remark2"

name

="remark"

>

textarea

>

56div

>

57form

>

1

var o ={};

2var arr = $("#dailyfinancial").serializearray();//

直接序列化成物件陣列,每個物件由name和value組成

3 $.each(arr,function

(i,v)

8 o[this.name].push(this.value || ''); //在陣列後追加新的元素

9 }else

12});

13 console.log(o);

用 $("#dailyfinancial").serializearray()把form表單的值序列化成物件陣列;

用$.each函式遍歷陣列,遍歷每個物件(如果存在重複的name,則他的值用陣列來接受)組裝成jquery物件

瀏覽器列印結果如下:object

注:!o[this.name].push ->當屬性的值不是陣列時,結果顯示為undifined,如果是陣列時,返回的結果是:function push() ,所以這個判斷是為了避免form表單標籤有重複name時,他們的值都可以獲取的到。

form表單序列化為json

開發過程中,可能會涉及到表單提交,如果直接提交,那整個頁面會重新整理,並且也無法獲取對應的提示資訊。所以表單提交通常用ajax來實現,如果整個表單的字段很多,乙個個的拼接很麻煩,這裡介紹乙個工具 form序列化為json fn.serializeobject function var a this....

form表單資料序列化為json

世上沒有最聰明的人,只有最懶的人,分享乙個表單資料序列化為json資料,通過ajax提交資料就不用乙個乙個的去獲取值了,用下面的方法一鍵取值,懶人必備利器 fn.serializeobject function var a this.serializearray each a,function o ...

jQuery表單序列化為json物件外掛程式

我們在開發web的時候,往往會用到表單的序列化,這裡寫了乙個表單序列化的外掛程式,第一次寫可外掛程式 function options var jsonobj if defaultsetting.isrepeat else else else return jsonobj jquery 解讀 1.v...