2017-06-08 19 views
0

タイトルが正しいかどうかは分かりません。実際のアプリケーションはクイズです。さて、私はこれを説明して、私のサンプルスニペットを挙げましょう。チェックボックス多次元配列をJSON形式で解析する方法は?

<form method="POST"> 
 
    
 
    Softdrinks: 
 
    <div class="checkbox"> 
 
     <label><input type="checkbox" name="question[1]answer[]" value="Coke">Coke</label> 
 
    </div> 
 
    <div class="checkbox"> 
 
     <label><input type="checkbox" name="question[1]answer[]" value="Royal">Royal</label> 
 
    </div> 
 
    
 
    Coffee : 
 
    
 
    <div class="checkbox"> 
 
     <label><input type="checkbox" name="question[2]answer[]" value="Cappuccino">Cappuccino</label> 
 
    </div> 
 
    <div class="checkbox"> 
 
     <label><input type="checkbox" name="question[2]answer[]" value="Latte">Latte</label> 
 
    </div> 
 
    
 
    <button type="submit">Submit</button> 
 
    
 
    </form>

のは、すべてのオプションがチェックされていると仮定しよう。だから、「ロイヤル」と「ラテ」はスキップされ、私はなぜ知らない

"question":{ 
    "1":"Coke", 
    "2":"Cappuccino" 
} 

:フォームを送信する場合でも、出力は次のようなものでした。私はこのような出力をしたい:

"question":[ 
    "1": { 
     "Coke", 
     "Royal" 
    } 
    "2": { 
     "Latte", 
     "Cappuccino" 
    } 
] 

答えて

1

name要素の属性が正しくありません。それは私の問題を解決し、以下の出力

"question":[ 
    "1": { 
     "Coke", 
     "Royal" 
    } 
    "2": { 
     "Latte", 
     "Cappuccino" 
    } 
] 
+0

を生じるはずである。この

<form method="POST"> Softdrinks: <div class="checkbox"> <label><input type="checkbox" name="question[1][]" value="Coke">Coke</label> </div> <div class="checkbox"> <label><input type="checkbox" name="question[1][]" value="Royal">Royal</label> </div> Coffee : <div class="checkbox"> <label><input type="checkbox" name="question[2][]" value="Cappuccino">Cappuccino</label> </div> <div class="checkbox"> <label><input type="checkbox" name="question[2][]" value="Latte">Latte</label> </div> <button type="submit">Submit</button> </form> 

を試してみてください。ありがとうございました。 –

関連する問題