一个javascript函数,在头部工作,但不作为源文件

Yve*_*omb 1 html javascript function src onsubmit

我有一个javascript函数来验证表单.

<script type="text/javascript">
function formValidate()
        {
            // create array containing textbox elements
            var inputs = [document.getElementById('fname'), document.getElementById('lname'), document.getElementById('email1'), document.getElementById('email2'), document.getElementById('message')];

            var error;

            for(var i = 0; i<inputs.length; i++)
            // loop through each element to see if value is empty
            {
                if(inputs[i].value == '')
                {
                    error = 'Please complete all fields.';
                    alert(error);
                    return false;
                    }
            }
         }
</script>
Run Code Online (Sandbox Code Playgroud)

它在html页面的头部工作,但不是我从另一个文件引用它时.

<script src="form.js" type="text/javascript"></script>
Run Code Online (Sandbox Code Playgroud)

表格代码:

<form onsubmit="return formValidate()"  action="mailto:admin@sfasc.com.au" method="post"  id="contactForm" >
Run Code Online (Sandbox Code Playgroud)

你能告诉我我做错了什么吗?

Ian*_*Ian 5

<script>标记返回的内容应该只是您的JavaScript,而不包含任何HTML.这意味着你的JS文件应该只包含JS代码,而不是<script type="text/javascript"></script>部分.您的HTML文件负责HTML,这就是您的原因<script src="form.js" type="text/javascript"></script>.