2014-04-01 157 views
-2

我怎麼會序列化是這樣一種形式:序列化格式正確的JSON

<form id="SomeForm"> 
    <input type="hidden" name="testId" value="123" /> 

    <input type="radio" name="question-1" value="1" /> 
    <input type="radio" name="question-1" value="2" /> 
    <input type="radio" name="question-1" value="3" /> 

    <input type="radio" name="question-2" value="1" /> 
    <input type="radio" name="question-2" value="2" /> 
    <input type="radio" name="question-2" value="3" /> 
    <input type="radio" name="question-2" value="4" /> 
</form> 

成JSON結構的財產以後這樣的:

{ 
"testid" : 123, 
"questions" : [ 
    { "question" : [ { 
     "id" : 1, 
     "answer" : 2 
    }]}, 
    { "question" : [ { 
     "id" : 2, 
     "answer" : 4 
    }]} 
] 
} 
+1

嗯,你嘗試過什麼嗎?哪一部分對你很困難?順便說一句,你的例子不是有效的JSON。 '[]'是一個數組,它不應該有任何鍵。 – kapa

+1

'testid'的'問題'兄弟正在使用'[..]',就像它是一個_Array_,但是它的標籤是_Object_。這是無效的_JSON_,它甚至不是有效的_JavaScript_文字。 –

+0

現在編輯..和香港專業教育學院嘗試使用jquery serializeArray,也看着https://github.com/macek/jquery-serialize-object,但我似乎沒有得到那個結果 –

回答

0

試試這個:

$(document).ready(function(){ 
var frm = $("#SomeForm"); 
var data = JSON.stringify(frm.serializeArray()); 
console.log(data); 

$("#test").click(function(){ 
    var frm = $("#SomeForm"); 
    var data = JSON.stringify(frm.serializeArray()); 
    alert(data); 
}); 
}); 

工作小提琴:http://jsfiddle.net/robertrozas/as55D/