2017-01-19 5 views
0

私は、このHTML持っている -HTMLラジオボタンのラベル - Javascript IDを入力しますか?

<div class="qa"> 
<div class="questions"></div> 
<div class="answers"> 
    <div class="answer"> 
    <input type="radio" name="answer" value="Correct" id="Correct" /><label for="Correct"> Answer 1 </label> 
    </div> 
    <div class="answer"> 
    <input type="radio" name="answer" value="Incorrect" id="Incorrect" /><label for="Incorrect"> Answer 2 </label> 
    </div> 
</div> 

をそして、私のJavaScriptは、このようなものに見える -

var questions = [ { 
"q": "When was Project Launched?", 
"a": {"Correct": "That's Right!","Incorrect": "Nope, Project was launched in 2016" }, 
"Option1": "2016", 
"Option2": "2017" 
}, 

私が希望することで、ラジオボタンのラベルを動的に引っ張るための答えですがHTML。ですから、静的な "Answer1" "Answer2"テキストの代わりに、 "Option1"と "Option2" IDを<label for="Correct">のスペースに入れることが本当に必要です。

可能ですか?

おかげで、

+0

あなたはもう少しあなたの質問を説明することができますか? –

+0

あなたは何か試しましたか? – Mad

+0

私は本当に答えが正しいかどうかわかりませんが、Option1は常にAnswer1とOption2が常にAnswer2ですか? –

答えて

0

から$('label[for=Correct]').html('New Label');やjQueryの

なし
var input = document.getElementById('Correct'); 
var label = input.getElementsByTagName('label')[0]; 
label.innerHTML = 'New Text'; 

を試してみてくださいこのヘルプあなたをしていますか?

var questions = [ { 
 
    "q": "When was Project Launched?", 
 
    "a": {"Correct": "That's Right!","Incorrect": "Nope, Project was launched in 2016" }, 
 
    "Option1": "2016", 
 
    "Option2": "2017" 
 
}]; 
 

 

 

 
var divElement1 = document.getElementsByClassName("answer")[0]; 
 
divElement1.childNodes[3].innerText = questions[0].Option1; 
 

 
var divElement2 = document.getElementsByClassName("answer")[1]; 
 
divElement2.childNodes[3].innerText = questions[0].Option2;
<div class="qa"> 
 
    <div class="questions"></div> 
 
    <div class="answers"> 
 
     <div class="answer"> 
 
\t \t \t <input type="radio" name="answer" value="Correct" id="Correct" /> 
 
\t \t \t <label for="Correct"> Answer 1 </label> 
 
\t \t </div> 
 
\t \t <div class="answer"> 
 
\t \t \t <input type="radio" name="answer" value="Incorrect" id="Incorrect" /> 
 
\t \t \t <label for="Incorrect"> Answer 2 </label> 
 
\t \t </div> 
 
\t </div> 
 
</div>

+0

ええ、それは実際に動作するようです!ありがとうございました! 「Answer 2」と「Answer 1」のテキストがHTMLに残っている理由を説明できますか?今は何もしていないようですね。 –

+0

さらに、質問を追加したい場合は、合計5つの回答を別々にしたい場合は、この設定でどうすればいいですか? –

関連する問題