我正在尝试为联系人页面创建验证表单。但是,每次我点击提交或清除按钮时,它似乎都在重新加载页面。我无法弄清楚,虽然我确信它在我面前是正确的。
以下是代码:http://jsbin.com/ahaxos/1/edit
非常感谢任何帮助!
答案 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"
作为电子邮件输入。