2017-09-05 68 views
0

我奮力確定JSON簡單的問卷結構
所以測試可以有多個部分,
每個部分可以在多個子段 每個子部分必須有一個或多個問題
我檢查語法使用JSONLint ,但顯然我不能對同一個對象使用兩次相同的元素(sub_section,ot question)。這就是我得到:JSON問卷結構

SyntaxError: Duplicate key 'question' on line 13 

這是我創建的JSON:

"test_sections": [{ 
"section": [{ 
    "identifier": "section1", 
    "caption": "translate.section1", 
    "sub_section": [{ 
     "identifier": "sub_section1", 
     "caption": "translate.section1.sub_section1", 
     "question": { 
      "identifier": "question1", 
      "caption": "translate.section1.sub_section1.question1", 
      "question": "How are you?" 
     }, 
     "question": { 
      "identifier": "question1", 
      "caption": "translate.section1.sub_section1.question1", 
      "question": "How are you?" 
     } 
    }], 
    "sub_section": [{ 
     "identifier": "sub_section2", 
     "caption": "translate.section1.sub_section2", 
     "question": { 
      "identifier": "question2", 
      "caption": "translate.section1.sub_section2.question2", 
      "question": "How is your day?" 
     } 
    }] 
}], 
"section": [{ 
    "identifier": "section2", 
    "caption": "translate.section2", 
    "sub_section": [{ 
     "identifier": "sub_section1", 
     "caption": "translate.section2.sub_section1", 
     "question": { 
      "identifier": "question1", 
      "caption": "translate.section2.sub_section1.question1", 
      "question": "What is the time now?" 
     } 
    }], 
    "sub_section": [{ 
     "identifier": "sub_section2", 
     "caption": "translate.section2.sub_section2", 
     "question": { 
      "identifier": "question2", 
      "caption": "translate.section2.sub_section2.question2", 
      "question": "What is your favorite pet?" 
     } 
    }] 
}] 

}]

+1

第一個「小節」有兩個'question'屬性 – Vivick

回答

1

而不是重複相同的密鑰,名稱作爲複數的鑰匙,並給予它是一個數組作爲值:

{ 
    "test_sections": [{ 
     "identifier": "section1", 
     "caption": "translate.section1", 
     "sub_sections": [{ 
      "identifier": "sub_section1", 
      "caption": "translate.section1.sub_section1", 
      "questions": [{ 
       "identifier": "question1", 
       "caption": "translate.section1.sub_section1.question1", 
       "question": "How are you?" 
      }, { 
       "identifier": "question1", 
       "caption": "translate.section1.sub_section1.question1", 
       "question": "How are you?" 
      }] 
     }, { 
      "identifier": "sub_section2", 
      "caption": "translate.section1.sub_section2", 
      "questions": [{ 
       "identifier": "question2", 
       "caption": "translate.section1.sub_section2.question2", 
       "question": "How is your day?" 
      }] 
     }] 
    }, { 
     "identifier": "section2", 
     "caption": "translate.section2", 
     "sub_sections": [{ 
      "identifier": "sub_section1", 
      "caption": "translate.section2.sub_section1", 
      "questions": [{ 
       "identifier": "question1", 
       "caption": "translate.section2.sub_section1.question1", 
       "question": "What is the time now?" 
      }] 
     }, { 
      "identifier": "sub_section2", 
      "caption": "translate.section2.sub_section2", 
      "questions": [{ 
       "identifier": "question2", 
       "caption": "translate.section2.sub_section2.question2", 
       "question": "What is your favorite pet?" 
      }] 
     }] 
    }] 
} 
+0

我知道了,所以屬性名稱不能應用程序耳朵兩次(像sub_section)很棒,謝謝! – user648026