0

両方の質問から各ラジオがチェックされたときにリダイレクトしようとしています。しかし、私が使用した次のコードは機能していません。

    function chekcSubmitType()
    {

        if(document.getElementById('ra').checked, document.getElementById('rc').checked)
        {
            window.location="page-1.html"; 
        }

        if(document.getElementById('ra').checked, document.getElementById('rd').checked)
        {
            window.location="page-2.html"; 
        }

        if(document.getElementById('rb').checked, document.getElementById('rc').checked)
        {
            window.location="page-3.html"; 
        }

        if(document.getElementById('rb').checked, document.getElementById('rd').checked)
        {
            window.location="page-4.html"; 
        }
    }

JavaScript コードを使用して、両方の質問を分離しました。

<form name="myquiz" method="post">

<p>Question (1)</p>
        <span>500</span>
        <input type="radio" id="ra" value="question1"/>
        <span>1000</span>
        <input type="radio" id="rb" value="question1"/>

<!--I have separated these both by using a JavaScript code-->

<p>Question (2)</p>
        <span>1500</span>
        <input type="radio" id="rc" value="question2"/>
        <span>2000</span>
        <input type="radio" id="rd" value="question2"/>

<input type="button" onClick="chekcSubmitType()" value="Go" />

</form>

これが私が実際にやりたいことです:

(r)はラジオの略です

ra + rc redirect to page-1.html
ra + rd redirect to page-2.html
rb + rc redirect to page-3.html
rb + rd redirect to page-4.html
4

3 に答える 3

1

2 つの式が true かどうかを確認する場合は、&&-operator を使用します。a を使用し,てそれらを区切らないでください。

function chekcSubmitType()     {
    if(document.getElementById('ra').checked && document.getElementById('rc').checked) {
        window.location="page-1.html"; 
    }

    if(document.getElementById('ra').checked && document.getElementById('rd').checked) {
        window.location="page-2.html"; 
    }
    // and so on...
}

詳細については、論理演算子に関するこの追加情報を参照してください。

于 2012-12-29T20:22:47.787 に答える
0

演算子を使用&&...

またelse if、コードを改善するために使用してください...

function chekcSubmitType() {

if (document.getElementById('ra').checked && document.getElementById('rc').checked) {
    window.location = "page-1.html";
}

else if (document.getElementById('ra').checked && document.getElementById('rd').checked) {
    window.location = "page-2.html";
}

else if (document.getElementById('rb').checked && document.getElementById('rc').checked) {
    window.location = "page-3.html";
}

else if (document.getElementById('rb').checked && document.getElementById('rd').checked) {
    window.location = "page-4.html";
}
}​

ここにデモがあります

于 2012-12-29T20:23:46.107 に答える
0

&& 演算子については Vegar が正しいです。また、window.location の代わりに window.location.href='' を使用する必要があります。(一部のブラウザーでは、動作に .href が必要です)

function checkSubmitType()
{
    if(document.getElementById('ra').checked && document.getElementById('rc').checked)
        window.location.href = 'page-1.html';
    if(document.getElementById('ra').checked && document.getElementById('rd').checked)
        window.location.href = 'page-2.html';
    if(document.getElementById('rb').checked && document.getElementById('rc').checked)
        window.location.href = 'page-3.html';
    if(document.getElementById('rb').checked && document.getElementById('rd').checked)
        window.location.href = 'page-4.html';
}
于 2012-12-29T20:28:43.837 に答える