javascript - Javascript - 电子邮件验证不起作用
问题描述
我有以下 HTML 脚本,其中包含 CSS 和 Javascript。我有一个简单的 javascript 函数,它应该验证我输入的电子邮件。但是javascript函数根本没有被调用。有人可以帮忙吗?
function validateForm() {
var x = document.getElementById("email").value;
alert(x);
var atpos = x.indexOf("@");
var dotpos = x.lastIndexOf(".");
if (atpos < 1 || dotpos < atpos + 2 || dotpos + 2 >= x.length) {
alert("Not a valid e-mail address");
return false;
}
}
<h1>DELIVERY DETAILS</h1>
<form id="deliveryDetails">
First name:<br>
<input type="text" name="firstname"><br> Last name:<br>
<input type="text" name="lastname"><br> e-mail:
<br>
<input type="text" id="email"><br> telephone number:<br>
<input type="text" name="telephone number"><br> order number:<br>
<input type="text" name="order number"><br> order date:<br>
<input type="text" name="order date"><br><br>
<input type="submit" value="submit" onsumbmit="return validateForm();">
</form>
解决方案
提交按钮没有onsubmit
事件,表单有,而是将事件添加到表单,并且代码确实被执行:
function validateForm() {
var x = document.getElementById("email").value;
alert(x);
var atpos = x.indexOf("@");
var dotpos = x.lastIndexOf(".");
if (atpos < 1 || dotpos < atpos + 2 || dotpos + 2 >= x.length) {
alert("Not a valid e-mail address");
return false;
}
}
<h1>DELIVERY DETAILS</h1>
<form id="deliveryDetails" onsubmit="return validateForm();">
First name:<br>
<input type="text" name="firstname"><br> Last name:<br>
<input type="text" name="lastname"><br> e-mail:
<br>
<input type="text" id="email"><br> telephone number:<br>
<input type="text" name="telephone number"><br> order number:<br>
<input type="text" name="order number"><br> order date:<br>
<input type="text" name="order date"><br><br>
<input type="submit" value="submit" >
</form>
推荐阅读
- javascript - Angular - @Inject(MAT_DIALOG_DATA) 不允许属性访问
- c++builder - No DefaultInterface in TCppWebBrowser
- python - 将具有多列的数据框重塑为行组
- linux - Linux 上 Qt6 的 Bazel 规则:如何复制所需的库?
- google-chrome - 通过删除'lodin data'文件删除密码管理器的存储数据
- sql - 列操作中的 ClickHouse 限制
- java - 如果选中另一个复选框,则隐藏四个复选框中的三个
- progressive-web-apps - 如何将 PWA start_url 设置为与 manifest.json 文件所在位置不同的位置?
- c++ - Clion c++ 可执行文件 vs C++ 库
- azure-active-directory - 无法将联系人读/写到用户邮箱