0
我无法弄清楚为什么我的函数无法在提交时被我的html表单调用。当我直接将javascript放在头部时它工作正常,但是当它在它自己的.js文件中时它没有。无法通过外部JS文件调用函数提交
我validate.js
function validateForm()
{
if (document.forms[0].myName.value == "")
{alert("Name field cannot be empty.");
return false;
} // end if
if (document.forms[0].myEmail.value == "")
{
alert("Email field cannot be empty");
return false;
} // end if
if (document.forms[0].myJob.value == "")
{
alert(" Job Description cannot be empty");
return false;
}//end if
if (document.forms[0].myPhone.value == "")
{
alert(" Phone Number cannot be empty");
return false;
}//end if
alert("Name, email, job description and phone number are valid.");
document.forms[0].myName.value = document.forms[0].myName.value.toUpperCase();
return true;
} // end function validateForm
而我的HTML
<title>Pasha the Painter Estimates</title>
<link href="painter.css" rel="stylesheet" type="text/css" />
<link href="favicon.ico" rel="icon" type="images/x-icon" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type=“text/javascript” src=“validate.js”></script>
</head>
<body>
<div id="container">
<h1 id="logo"><img src="painterlogo.gif" alt="Pasha the Painter" width="620" height="120" /></h1>
<div id="leftcolumn">
<ul>
<li><a href="index.html">Home</a></li>
<li><a href="services.html">Services</a></li>
<li><a href="testimonials.html">Testimonials</a></li>
<li><a href="estimates.html">Estimates</a></li>
</ul>
</div>
<div id="rightcolumn">
<p>Request a Free Estimate.</p>
<form method="post" action="http://webdevfoundations.net/scripts/painter.asp" onsubmit="return validateForm();">
<div class="myRow">
<label class="labelCol" for="myName">Name: </label>
<input type="text" name="myName" id="myName" />
</div>
<div class="myRow">
<label class="labelCol" for="myEmail">E-mail: </label>
<input type="text" name="myEmail" id="myEmail" />
</div>
<div>
<label class="labelCol" for="myJob">Description </label>
<textarea name="myJob" id="myJob" rows="2" cols="20"></textarea>
</div>
<div>
<label class="labelCol" for="myPhone">Phone Number: </label>
<input type="text" name="myPhone" id="myPhone" />
<div class="mySubmit">
<input type="submit" value="Free Estimates" />
</div>
</form>
<div id="footer">Copyright © 2011 Pasha the Painter<br />
<a href="mailto:[email protected]">[email protected]</a>
</div>
</div>
</div>
</body>
</html>
所以我无法接受6分钟的答案或直到15代表给予upvote,但你是对的。我一直在玩追赶,并卡住了,谢谢你的新鲜眼睛,我不知道我什么时候会注意到。 再次感谢。 –
@SpenserK,没问题...很高兴它是o.k.现在。并欢迎来到stackoverflow。 – gdoron
感谢使用堆栈之前,当我陷入了Java和C +的困境,但这是第一次我提出了一个问题,如此快速的响应时间。 –