玩了一下vuejs,裡面的自動繫結這些機制挺吸引我的。
然而,問題來了,假如我將乙個json物件,例如,增刪改查裡面的一條資料庫記錄物件,裡面還要有幾個列表物件,例如:
id:1
,name:"我的足跡"
,tags:[,]
};那麼當我們直接用繫結到介面時候,連個表單都不用,這樣如何提交到後台,後台如何接收修改,如何進行更新資料記錄?
乙個方法是
json.stringify(book)
然後得到:
id":1,"
name
":"我的足跡","tags":[,]}"
後台直接用:
偽**:
jsonobject.tojson(book.class,jsonstr)
這種方式來進行讀取。
缺點不敢說這方式不好,然後對於要趕工期的碼農來說,每次接收一次資料資料,就要確保json格式不錯誤,要確保字段完全一樣,這個就除錯而言恐怕難度不低的,對於新手程式設計師或者不熟悉的人來說,壓根要命,
一般歷史**接收資料的形式都是這樣的:
第二點,如果有同行有後台介面開發經驗的話,那麼肯定知道介面寫完以後自己要測試一下的,譬如,直接打個**傳寫引數進去——-每次傳資料都要json格式化那不就是要了碼農的老命了嗎?
有些正規一點的,介面文件跟測試放在一起的,譬如:
這就是測試文件了。。所以,在下苦口婆心勸告的意思是,咱們還是按照正常途徑來處理。
所以解決方式是,將json都轉成平時用得一維扁平表單資料,以下**大家收好。
function
parsejson2form
(prefix,jsonobject)
var resobj={};
var gettype = object.prototype.tostring;
for (var key in jsonobject) else else
if(typestr== "[object object]")
else
if(typestr=="[object array]")
else
}if(is******array)
else}}
}}}return resobj;
}function
_recursive_parsejson2form_
(resobj,parentkey,jsonobject)else else
if(typestr== "[object object]")
else
if(typestr=="[object array]")
else
}if(is******array)
else}}
}}}}
var testobj=
,"t4":[,]
}},],"key3":[1,2,3]
,"datainfo":,]
},"hello":["***","yy","zz"]
};var book=,]
};
測試如下:
直接在控制台輸入命令
好了,該文章首先發布於個人部落格 同步發布於個人csdn部落格:
如何將URL轉換成物件
每次心痛的時候,我都喜歡聽,夜的鋼琴曲。而每次都感覺很傷感,很落寞。然後心情也不會在緊張了。還有32天,就要去 五道口職業技術學院 考試了,希望一切順利。我在原來的部落格曾寫過一篇,物件拼接成url,在這裡在講一下如何將url變成物件。目標字串 const share url 123456789?l...
如何將DataTable轉換成List
using system using system.collections.generic using system.linq using system.text using system.data using system.collections using system.reflection n...
如何將String字串轉換成JSON型別
定義乙個json資料字串 要把string字串轉換成json資料型別必須遵循鍵值對的賦值方法 string str 在這需要涉及到轉義字元 表示斷開式鏈結字串 接下來就是建立json物件 將str字串轉換成json格式 jsonobject jsonstr jsonobject.fromobject...