1

我在我们的新网站设计上有一个登录表单,它有一个用户名/密码输入、一个用于选择要登录到网站的哪个部分(控制面板)的下拉选择,以及一个提交按钮。由于每个面板都有不同的从外部页面登录的需求,我编写了一个 Javascript 函数来匹配这些。不幸的是,它似乎不起作用,我不知道问题出在哪里。

<script type="text/javascript">
function changeAction(s)
{
    var loginform = document.getElementById("frmLogin");
    panel_option = parseInt(s.options[s.options.selectedIndex].value);

    switch (login_option)
    {
        case 0:
            loginform.action = "https://www.domain.com/clients/dologin.php?goto=clientarea";
            loginform.username.name = "username";
            loginform.password.name = "password";
            break;
        case 1:
            loginform.action = "http://my.domain.com/templates/default/login.aspx";
            loginform.username.name = "UserName";
            loginform.password.name = "Password";
            break;
        case 2:
            loginform.action = "http://voicepanel.domain.com";
            loginform.username.name = "email";
            loginform.password.name = "password";
            break;
        default:
            loginform.action = "https://www.domain.com/clients/dologin.php?goto=clientarea";
            loginform.username.name = "username";
            loginform.password.name = "password";
            break;
    }
}

function loginSubmit()
{
    var user = document.getElementsByName("username");
    var pass = document.getElementsByName("password");

    if(!user[0].value)
    {
        return;
    }

    if(!pass[0].value)
    {
        return;
    }

    document.getElementById("frmLogin").frmLogin.submit();
}
</script>

</head>
<body>
<div id="wrap">
<!--Start Header-->
<div id="header">
<a href="index.php" id="logo"><span class="text_in">XFS</span></a>

<!--User Login-->
<div id="header_right">
    <h2><span class="text_in">User Login</span></h2>

    <form method="POST" name="frmLogin" id="frmLogin" onSubmit="javascript:loginSubmit();">
        <input class="binput" name="username" style="margin-left: 40px;" value="Username">
        <input class="binput" name="password" type="password" value="Password">
            <select class="binput" style="margin-left: 40px; width: 130px;" onchange="javascript:changeAction(this);">
                <option value="0">Billing Panel</option>
                <option value="1">Game Panel</option>
                <option value="2">Ventrilo Panel</option>
            </select>
        <input type="submit" class="blogin" value="Login" id="ButtonLogin">
    </form>
4

2 回答 2

0

网站有不同的登录方式。例如VBulletin哈希用户密码!其他一些使用大量隐藏文本字段!所以,当你想发送数据时,你应该确保所有数据都存在!
一种方法是创建多个表单并只显示一个用户想要查看的内容!

于 2011-08-10T10:29:51.633 回答
0

愚蠢的错误,我在 Java 脚本中的 switch 语句在一个不存在的变量上。

于 2011-08-10T11:23:04.397 回答