この簡単なスクリプトを質問表に添付しましたが、選択した回答をテキストエリアに表示するのに問題があります。スクリプトは次のとおりです。
function check() {
var complete = 0;
var total = 0;
for (i=0;i<document.form.length;i++)
{
if (document.form.elements[i].checked == true && complete < 10) {
complete++;
total = (total) + (Math.round(document.form.elements[i].value));
}
}
if (complete >= 10) {
document.form.message.value = document.form.question1.value;
}
}
そしてここにHTMLがあります:
<input type="radio" value="1" name="question1" onclick="check()"> A<br />
<input type="radio" value="2" name="question1" onclick="check()"> B<br />
<input type="radio" value="3" name="question1" onclick="check()"> C<br />
<input type="radio" value="4" name="question1" onclick="check()"> D<br />
<input type="radio" value="1" name="question2" onclick="check()"> E<br />
<input type="radio" value="2" name="question2" onclick="check()"> F<br />
<input type="radio" value="3" name="question2" onclick="check()"> G<br />
<input type="radio" value="4" name="question2" onclick="check()"> H<br />
<textarea name="message"></textarea>
値を返したいのですが、取得していundefined
ます。テキストを返すスクリプトの行を次のように変更すると、次のようになります。
document.form.message.value = document.form.question1;
取得し[object NodeList]
ます。私はとても単純なものが欠けていることを知っていますが、私の人生のためにそれを見つけることができません。
また、AからHまでの文字を値と一緒に返すことはできますか?値を文字に置き換えることはできますが、計算には数字が必要です。