无法从外部返回函数或方法

时间:2011-09-11 03:45:55

标签: javascript return

我在onsubmit =“return validate()”附近收到错误“无法从函数或方法外部返回” 什么错误的代码 plzzz帮我卡住了....

为文件

填写此link
<html>

<head>
<style>
body {
    margin: 0 auto;
    padding: 0px;
    background: white;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 12px;
    color: black;
}

p {
    margin: 0px;
    padding: 0px;
}

#main-wraper {
    width: 756px;
    margin: 0 auto;
    padding: 0px;
}

#top-wraper {
    width: 756px;
    margin: 0 auto;
    float: left;
}

#banner {
    width: 1004px;
    float: center;
    background: url(banner22.jpg) top no-repeat;
    height: 100px;
    font-family: Georgia, "Times New Roman", Times, serif;
    font-size: 35px;
    color: #fff;
    padding: 60px 0px 30px 120px;
}
</style>

<script type="text/javascript">
function validate()
{
    var valid=true;
    if (document.name1.username.value=="")
    {
        alert("please fill in the username");
        valid=false;
    }
    else if(document.name1.password.value=="")
    {
        alert("please enter the password");
        valid=false;
    }
return valid;
}
</script>

</head>

<body>
<form name="name1" action="Loginservlet" onsubmit="return validate()"
        method="post">
        <div id="banner">
            <center>
                <strong> NATIONAL SELF EMPLOYMENT </br> PROGRAM </strong>
            </center>
        </div>
        <center>
            <table>
                <tr><td>
                    </br></td>
                </tr>
                <tr><td>
                    </br></td>
                </tr>
                <tr><td>
                    </br></td>
                </tr>
                <tr align="center"><td>
                    <img src="image/UserLogin.jpg"> </td></td>
                </tr>

                <tr><td>
                    <fieldset>
                        <legend><b>NSEP Admin Login</b></legend>
                        <div align="center"></br> <font color="red"><b>Access Denied</b></font></div>
</br> Username:<input type="text" name="username" size="25"'
style="color:#0033FF;background-color:silver; border-style:dotted; border-width:1px;
border-color:gray" /><br /></br>
Password: <input type="password" name="password" size="25" style="color:#0033FF;
background-color:silver; border-style:dotted; border-width:1px; border-color:gray" />
<br /></br>
<div>
    <center>
<input type="submit" value="Login" />
</center>
</div></fieldset></td></tr></table>
</center></form>
<p align="center"><font face="Arial" size="1" color="#336699">All Rights ® Reserved
</font></p>
</body>
</html>

1 个答案:

答案 0 :(得分:0)

您的示例在我的Safari浏览器中正常运行。我的猜测是你在使用的任何浏览器中都会看到某种错误。 (我猜IE6?IE7?)

这是一个简单的事情,应该适用于所有那些糟糕的IE遗留浏览器:

  1. 从表单中删除onsubmit =“return validate()”。
  2. 在第61行(在validate()函数结束后),添加以下行:

    window.onload = function () {document.forms['name1'].onsubmit = validate;}

  3. 这只是设置事件处理程序的一种稍微兼容的方式。