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 个表达式是否为真,请使用 - 运算&&符,不要使用 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.href='' 而不是 window.location。(某些浏览器需要 .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 回答