Ho cercato ore per questo e non ho trovato risposta. Si prega di leggere tutta la domanda prima di fiammeggiare! :)Serializzare il modulo complesso sull'oggetto JSON utilizzando jQuery
Ho una forma simile a questo:
<form id="sample">
<input name="name" type="text" value="name value" />
<input name="phone[0][type]" type="text" value="cell" />
<input name="phone[0][number]" type="text" value="000" />
<input name="phone[1][type]" type="text" value="home" />
<input name="phone[1][number]" type="text" value="111" />
</form>
e devono essere in grado di serializzare a questo:
{
name: 'name value',
phone: [
{
type: 'cell',
number: '000'
},
{
type: 'home',
number: '111'
}
]
}
Ho provato la maggior parte delle risposte sul compreso SO jquery-JSON biblioteche e la maggior parte di loro tornano o meno così:
{
'name': 'name value',
'phone[0][type]': 'cell',
'phone[0][number]': '000',
'phone[1][type]': 'home',
'phone[1][number]': '111',
}
questo è qualcosa Non posso usare! : P
Grazie a tutti in anticipo.
Grazie mille Juliano! Questa è la soluzione perfetta! : D –
Funziona come una magia. Ho avuto qualche modifica per gestire una situazione in cui il tuo elenco è nella forma var d = { 'nome': 'nome valore', 'phone [0] .type': 'cell', 'phone [0] .number ':' 000 ', ' phone [1] .type ':' home ', ' phone [1] .number ':' 111 ', }; Il risultato ha (.) In dalla chiave dell'elenco interno, quindi ho aggiunto Dopo il primo ciclo for nel processExpression () funzione. –
_key_ viene dichiarato due volte nella funzione. – robsch