使用 Javascript 进行正则表达式表单检查
Regex form checking with Javascript
我在javascript上遇到了一些真正的困难。
我正在尝试做的是验证来自 HTML 表单的用户输入。
我有两个 html 事件:
<form action="attendproc.asp" method="post" onSubmit="return validateForm(this)">
<input type="submit" id="submit" value="Submit" class="button" onClick="return submitForm()">
这是我的javascript:
//Confirm form submission
function submitForm() {
if (confirm("Are you sure you want to submit this form?") == false) {return false}
else {return true}
}
//Validate form input
function validateForm(form) {
fail = validDate(form.date.value)
fail += validNum(form.jsia.value)
fail += validNum(form.jsga.value)
fail += validNum(form.yvcia.value)
fail += validNum(form.yvcga.value)
if (fail == "") {return true}
else {alert(fail) return false}
}
function validDate(field) {
if (/^'d{2}'/'d{2}'/'d{4}$/.test(field) == false) {return "Invalid date format. Please enter a valid date.'n"}
else {return ""}
}
function validNum(field) {
if (isNaN(field)) {return "Invalid input. Please enter a valid integer.'n"}
else {return ""}
}
请注意,我正在使用正则表达式来验证我想要的日期格式。我肯定知道 submitForm() 函数有效。我的痛苦来自其他三个功能。请帮忙!
肖恩
我终于修复了它。
//Confirm form submission
function submitForm() {
if (confirm("Are you sure you want to submit this form?") == false) {return false;}
else {return true;}
}
//Validate attendance form input
function validateAttendForm(form) {
fail = validDate(form.date.value);
fail += validNum(form.jsia.value);
fail += validNum(form.jsga.value);
fail += validNum(form.yvcia.value);
fail += validNum(form.yvcga.value);
if (fail == "") {return true;}
else {alert(fail); return false;}
}
function validDate(field) {
re = /^'d{1,2}'/'d{1,2}'/'d{4}$/;
if (re.test(field) == false) {return "Invalid date format. Please enter a valid date.'n";}
else {return "";}
}
function validNum(field) {
if (isNaN(field) || field != parseInt(field)) {return "Invalid input. Please enter a valid interger.'n";}
else {return "";}
}
这是我用于 validDate() 函数的语法存在问题。这几乎是一个即插即用的修复。
除了阴暗的格式之外,肯定有一件事会导致问题。
isNaN(字段)应该是: isNaN(parseInt(field))
IsNaN 的计算结果仅为 true,字符串不是 NaN。ParseInt 尝试从字符串中解析 int,并返回一个数字或 NaN。
相关文章:
- jQuery表单,存在检查
- 我确实有一个表单,如果用户输入了输入,它应该检查否定或空的输入框,并抛出一条警告消息
- JQuery:如何检查某个类的所有复选框是否都在表单中选中
- HTML提交表单,同时包含空字段检查和按钮隐藏
- 在浏览器检查表单之前运行javascript onsubmit
- HTML.如何检查用户是否在表单中输入了文本
- 使用正则表达式进行HTML、javascript表单检查
- 如何进行最佳和安全的jQuery表单检查
- 角度架构表单 - 检查表单是否经过验证
- 简单的if/else表单检查(应该很简单)
- 需要HTML表单检查=“"在onclick=“;window.print()”;
- 提交前验证表单(检查是否输入了所有字段)
- 表单检查器不工作
- Javascript表单检查后不显示元素
- 简单的js-提交页面中的所有表单+检查页面在iframe中是否已经完成加载
- Javascript表单检查和加密密码
- 如何创建复选框的角度模式表单检查表
- 使用 Javascript 进行正则表达式表单检查
- jQuery"意外的标识符“;使用ajax表单检查
- 表单检查与ajax/jquery