0

JavaScriptは初めてなので、よろしくお願いします。私のウェブサイトには一種のクイズがあります。チェックしたラジオ ボタンをループして、ユーザーが送信をクリックしたときに値を加算する必要があります。

値が加算されると、小さなポップアップ ウィンドウが表示され、結果が表示されます。ラジオ ボタンの合計値が 0 ~ 10 の場合はメッセージ 1 を表示し、ラジオ ボタンの合計値が 11 ~ 20 の場合はメッセージ 2 を表示し、そうでない場合はメッセージ 3 を表示します。

インターネットを検索しましたが、ラジオボタンをループして合計を合計する方法についての簡単な説明が見つかりません

私のHTMLフォームは次のようになります

何歳ですか?
18-21
22-30
30-42
42

あなたはどのように見えますか?
私はタイ人に似ています
私はステレオタイプの外国人です (白い肌、ブロンドの髪、青い目)
私は女の子です 私は
年をとっ

ています あなたの資格レベルは何ですか
高校
大学卒業証書 / 証明書
学士号
修士号 以上

                  <strong>From which country are you?</strong><br />
                 <input type="radio" value="3" name="country" />Aus, NZ, SA, UK, US<br />
                 <input type="radio" value="0" name="country" />Other country from the once listed above<br />
                 <br />

                  <strong>Is English your naitive language</strong><br />
                 <input type="radio" value="2" name="country" />yes<br />
                 <input type="radio" value="0" name="country" />no<br />
                 <input type="radio" value="1" name="country" />no, but I am fluent<br />
                 <br />

                 <strong>Do you have any experience in teaching English in Thailand?</strong>
                 <br />
                 <input type="radio" value="0" name="experience" />none<br />
                 <input type="radio" value="1" name="experience" />0-1 year<br />
                 <input type="radio" value="3" name="experience" />1-2 years<br />
                 <input type="radio" value="4" name="experience" />2 years +<br />
                 <br />

                   <strong>What is your knowledge of Thai language and Thai culture</strong>
                 <br />
                 <input type="radio" value="1" name="culture" />I know nothing<br />
                 <input type="radio" value="2" name="culture" />I know my basics<br />
                 <input type="radio" value="3" name="culture" />I know slightly more than the basics<br />
                 <input type="radio" value="4" name="culture                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                \   " />My friends say I am Thai<br />
                 <br />

                    <strong>What is your knowledge of Thai language and Thai culture</strong>
                 <br />
                 <input type="radio" value="1" />I know nothing<br />
                 <input type="radio" value="2" />I know my basics<br />
                 <input type="radio" value="3" />I know slightly more than the basics<br />
                 <input type="radio" value="4" />My friends say I am Thai<br />
                 <br />

                    <strong>Do you have any visible tatoos or piercings?</strong>
                 <br />
                 <input type="radio" value="2" />Yes but it is not visible<br />
                 <input type="radio" value="4" />none<br />
                 <input type="radio" value="0" />Visible tatoo or piercing<br />
                 <br />

                 <strong>What gender are you</strong>
                 <br />
                 <input type="radio" value="1" />Male<br />
                 <input type="radio" value="4" />Female<br />
                 <br />
                 <input type="submit" onclick="showTotal" />


                 </form>
4

2 に答える 2

1

この投稿では、ラジオ ボタン グループの値を取得する方法を示します: How can we access the value of a radio button using the DOM?

あなたにとって最も簡単な答えは次のとおりです。

function getRadioValue (theRadioGroup)
{
    for (var i = 0; i < document.getElementsByName(theRadioGroup).length; i++)
    {
        if (document.getElementsByName(theRadioGroup)[i].checked)
        {
                return document.getElementsByName(theRadioGroup)[i].value;
        }
    }
}

var country = parseInt(getRadioValue ('country'));
var experience = parseInt(getRadioValue ('experience'));

など、それらをすべて追加して、すべてに警告する必要があります

var total = country + experience; // add all the other variables here
alert(total);

それが役立つことを願っています。

于 2013-01-08T05:23:51.497 に答える
-1

以下のスクリプトを head セクションに追加するだけで、以下のように合計値が得られます。

<script type='text/javascript' src='http://code.jquery.com/jquery-1.8.2.js'></script>
<script type="text/javascript">
function showTotal()
{
    total = 0;
    $("input[type=radio]:checked").each(function(){
        total += Number($(this).val());
    });
    alert(total);
}
</script>
于 2013-01-08T05:19:27.353 に答える