使用JavaScript重定向基于所选复选框

时间:2011-02-24 00:43:43

标签: javascript redirect checkbox

我在switch语句中有几个复选框,如下所示:

function whatsChecked(obj) {
    var indx = obj.id.substring(obj.id.length-1, obj.id.length);
    switch ( indx ) {
        case '9':
            if (document.sport.soccer_9.checked) {
                //window.open.href = "../google.com";;
                window.open("../google.com"); 
            } 
            break;
        }
    }
}

如何使用“继续”按钮确定单击了哪个复选框并将我重定向到正确的页面(而不是给每个复选框提供它自己的onclick事件)?

2 个答案:

答案 0 :(得分:1)

同样在http://jsfiddle.net/amelvin/YkFza/

在此示例中,复选框的所有更改事件都会自行注册,如果您选中其中一个框,则会提示复选框的值。如果您将alert(this.value)更改为location.href(this.value),您将获得重定向。

<form>
Google: <input type="checkbox" name="Google" value="http://google.com" />
Yahoo: <input type="checkbox" name="Yahoo" value="http://yahoo.com" />
</form>  

<script>
function AddHandlers(f)
{
    var change_handler = new Function("alert(this.value)");

    for (var i=0; i<f.elements.length; i++)
     {
        var e = f.elements[i];
         e.onchange = change_handler;    
     }
}

AddHandlers(document.forms[0]);
</script>

答案 1 :(得分:0)

我会创建一个变量,根据选中的复选框进行切换。 (也许是一个int值)

然后,当您点击“继续”时,您可以说If (click == 1) { window.open(www.google.com") }或其他相似内容。可能不是最优雅的解决方案,但肯定应该有效。