2016-12-07 61 views
0

由於name='country[city]工作創造{city:"Some City"}我想name='country[city[street]]'將創造{city:{street:"Some Street"}}如何在html輸入中創建多級對象?

但讓我失望,也沒有!有沒有另外一種方法可以以一種不太複雜的方式實現這一點?

+0

http://stackoverflow.com/questions/2098276/nested-json-objects-do-i-have-to-use-arrays-for-everything –

回答

1

由於name='country[city]工作創造{city:"Some City"}

它不會,至少不會以任何標準方式。

任何標準格式編碼將只設置名稱爲"country[city]"。您可以通過使用GET表單並查看生成的URL來查看。這是application/x-www-form-urlencoded的非標準擴展,它在數據在服務器上解析後開始將其擴展爲比字符串更復雜的數據類型。

一般來說,這些系統可以讓您根據自己的喜好築巢。你只需把方括號在正確的地方:

name="country[city][street]" 
0

這將產生你的期望:

<form action="#"> 
    <input type="text" name="city[street]"> 
    <input type="submit" value="Go"> 
</form> 

結果:

{"city":{"street":"Some Street"}} 

更多關卡:

<form action="#"> 
    <input type="text" name="country[city][street]"> 
    <input type="submit" value="Go"> 
</form> 

結果:

{"country":{"city":{"street":"Some Street"}}} 
0

這來自JavaScript,如何創建對象並可以訪問。 []是您可能更熟悉的點(。)的備選符號。 See reference

var country = {}; // create object 
    country["city"] = "Some city"; // assign property 
    country["city"]["street"] = "Some street"; // assing nested property 
+0

編輯以此爲downvote是合理的。無論如何,希望這會有所幫助。 – Turo

相關問題