Javascript函数是否需要存储在自己的文件中才能被调用?

问题描述

| 情况如下: 我在.PHP文件中有此表单:
<form action=\"/flash_card/scripts/create_user_gate.PHP\"
            onsubmit=\"return validateForm()\" method=\"post\">
            <table align=\"center\">
                <tr>
                    <td>Name</td>
                    <td><input type=\"text\" name=\"name\" id=\"uname\"
                        onkeydown=\"return checkInput(event)\"></td>
                </tr>
                <tr>
                    <td>Password</td>
                    <td><input type=\"password\" name=\"password\">
                </tr>
                <tr>
                    <td></td>
                    <td><button onclick=\"return validateForm()\" type=\"button\"
                            title=\"Create user!\" name=\"submit\">Create!</button>
                    </td>
                </tr>
            </table>
        </form>
这样就在body标签之外:
<script type=\"text/javascript\" src=\"/flash_card/js/webscripts.js\"></script>
文件包含:
/**
 * 
 */

function validateForm(){
    document.write(\"BURNED INTO YOUR MINdddd\");
    return false;
}

function onlyAlphaNumericAndModifiers(e) {
    var keynum;
    var keychar;
    var numcheck;

    if (window.event) // IE
    {
        keynum = e.keyCode;
    } else if (e.which) // netscape/Firefox/Opera
    {
        keynum = e.which;
    }
    // letters,numbers,backspace,delete,arrow keys
    if (keynum >= 65 && keynum <= 90 || keynum >= 48 && keynum <= 57
            || keynum == 8 || keynum >= 37 && keynum <= 40 || keynum == 46) {
        return true;
    } else {
        return false;
    }
}
摆弄后,我发现我根本无法启动validateForm(),因此我将其分离到自己的文件中,突然单击就正确触发了validateForm(),文本框的onkeydown正确触发了checkInput作为好。 我哪里做错了?我假设一个.js文件可以包含多个功能,所以我必须缺少一些基本知识。     

解决方法

好像您在/flash_card/js/webscripts.js中可能有错误,您可以发布此文件的源代码吗?