外部JavaScript问题

时间:2014-05-06 19:01:49

标签: javascript

我第一次使用JS。似乎根本无法调用外部JS函数。我有一个HTML表单,我试图调用一个函数,所以如果第一个名称框为空,我会收到一条消息,说要填写一个名字。

我的表格

<head>
<script type="text/javascript" src="scripts/validation.js"></script>
</head>

<body>
 <form name="myForm" method="post" action="somewhere.html" 
   onsubmit="validation()">

<fieldset id="PersonalDetails">
    <legend>Personal Details</legend>
    <div class="form" id="firstname">
    <p>First Name: <br />
    <input type="text" name="firstname" />
    </p>
    </div>
 </fieldset>
  </form>
 </body>

在JS文件中:

 function validation(){
 var x=document.forms["myForm"]["firstname"].value;
 if (x==null || x=="")
 {
 alert("First name must be filled out!!!!");
 return false;
 }
}

3 个答案:

答案 0 :(得分:2)

你需要在表单中有一个提交按钮来触发onsubmit事件。如果您正确导入了javascript,系统会调用您的函数。请参阅下面的“使用提交按钮进行表单”。

<body>
 <form name="myForm" method="post" action="somewhere.html" 
   onsubmit="validation()">

<fieldset id="PersonalDetails">
    <legend>Personal Details</legend>
    <div class="form" id="firstname">
    <p>First Name: <br />
    <input type="text" name="firstname" />
    </p>
        <input type='submit' value='submit'/>
    </div>
 </fieldset>
  </form>
 </body>

答案 1 :(得分:1)

只需将onsubmit="validation()"更改为onsubmit="return validation()"

即可

答案 2 :(得分:0)

试试这个

更改表单

<form name="myForm" method="post" action="#" onsubmit="validation()">

更改您的javascript

function validation(){
 var x=document.forms["myForm"]["firstname"].value;
 if (x==null || x==""){
     alert("First name must be filled out!!!!");
     return false;
 }else{
    document.forms["myForm"].setAttribute("action", "somewhere.html").submit();
 }
}