У меня есть форма в следующем формате (только части вида)Построить JSON-объект из формы
<input type="text" name="Journal[data][serviceaddress][company]" value="{{company}}"/>
<input type="text" name="Journal[data][serviceaddress][address]" value="{{address}}"/>
<input type="text" name="Journal[data][serviceaddress][zip]" value="{{zip}}"/>
<textarea name="Journal[data][serviceaddress][notes]">{{notes}}</textarea>
<input type="text" name="Journal[rows][1][title]"/>
<input type="text" name="Journal[rows][1][body]"/>
<input type="text" name="Journal[rows][2][title]"/>
<input type="text" name="Journal[rows][2][body]"/>
Я хотел бы преобразовать это в следующий JSON-объект
{
data:{
serviceaddress:{
company: "companyvalue",
address: "addressvalue",
zip: "zipvalue",
notes: "notesvalue"
}
},
rows:{
1:{
title: "row1title",
body: "row1body"
},
2:{
title: "row2title",
body: "row2body"
}
}
}
Какой был бы лучший способ сделать это? Я думал, что я должен быть тем, кто сделал это уже, но все, что я нашел при поиске, - это люди, которые хотят ввести имя в качестве ключа, а не вложенные данные JSON ...
Вы хотите сделать это на стороне клиента или сервера? – Ares
Предполагая, что вы хотите сделать это в JQuery, проверьте сериализованный API - http://api.jquery.com/serialize/. Это может вам помочь. – ryadavilli
jQuery имеет форму.serializeArray() для этого ... – karaxuna