联系表单的Javascript验证

时间:2013-04-26 14:57:39

标签: javascript forms validation

我正在尝试为联系人页面创建验证表单。但是,每次我点击提交或清除按钮时,它似乎都在重新加载页面。我无法弄清楚,虽然我确信它在我面前是正确的。

以下是代码:http://jsbin.com/ahaxos/1/edit

非常感谢任何帮助!

2 个答案:

答案 0 :(得分:0)

您需要将所有这些行放在验证函数中,因为当它们处于全局范围内时(在所有函数之外),它们不会从表单中读取任何当前值:

var handletxt = form.handle.value;
var emailtxt = form.email.value;
var pcbox = form.pc.checked;
var ps3box = form.ps3.checked;
var wiibox = form.wiiU.checked;
var xboxbox = form.xbox.checked;
var actionbox = form.action.checked;
var fpsbox = form.fps.checked;
var puzzlebox = form.puzzle.checked;
var rtsbox = form.rts.checked;
var mobabox = form.moba.checked;
var rpgbox = form.rpg.checked;
var suggesttxt = form.suggest.value;
var error=[];

此外,变量“form”未定义。您需要在其他地方使用的验证函数中使用相同的变量名“form”,或者重写语句以在validater函数中使用变量ContactForm:

/* change this line */
function validater(ContactForm){

/* change to this so that your variable names match up */
function validater(form){

答案 1 :(得分:-1)

  

SCRIPT5009:'form'未定义

在表单存在于页面之前,您似乎尝试根据表单元素设置变量。此外,您还没有从validater返回任何内容。

话虽如此,您应该不再使用JavaScript来验证表单。而是更喜欢HTML5表单验证。在您的情况下,将required属性添加到必填字段,并使用input type="email"作为电子邮件输入。