javascript - 防止空白表单提交
问题描述
如果我想阻止在字段为空白的情况下提交我的表单并突出显示空白字段。如果我尝试在空白时提交但如果字段已填写则不提交,我到目前为止的代码有效。我似乎无法弄清楚我做错了什么。请帮忙
JavaScript 代码:
function CheckFields(){
if((document.getElementById('title').value=="") || (document.getElementById("textfield").value=="")){
const element = document.querySelector('form');
element.addEventListener('submit',event =>{
event.preventDefault();
alert("Fill the form to be submitted");
document.getElementById("title").style.backgroundColor=red;
document.getElementById("title").style.backgroundColor=red;
});
}
HTML:
<input name="post" type="submit" value="Post" onclick="CheckFields();">
解决方案
重新发布自:https ://developer.mozilla.org/en-US/docs/Learn/Forms/Form_validation ,目的是获得此问题的静态答案,因为网页可能会更改
使用内置表单验证 HTML5 表单控件最重要的特性之一是能够验证大多数用户数据,而无需依赖 JavaScript。这是通过在表单元素上使用验证属性来完成的。我们在课程的早期已经看到了其中的许多,但回顾一下:
required:指定在提交表单之前是否需要填写表单字段。minlength 和 maxlength:指定文本数据(字符串)的最小和最大长度
min and max:指定数值输入类型的最小值和最大值
type:指定数据是否需要是数字、电子邮件地址或其他特定的预设类型。
模式:指定一个正则表达式,定义输入数据需要遵循的模式。
推荐阅读
- python - 2个具有不同主键的数据框
- scala - KafkaTableSink:如何使用它?
- excel - 如何缩短这段代码以打印所有可能的组合(给定某些参数)
- node.js - 为什么 REST 调用包括
JSON响应中的元素?
- azure - 在 Azure ML 服务中装载 FileDatasets
- openlayers - 是否可以只渲染视口内的那些图层?
- android - 使用 Android Q 拒绝 AndroidAudioConverter 权限
- python - 用系列更新 pandas DataFrame 多级索引?
- visual-studio-code - VSCode:/usr/bin/node:错误选项:--inspect 自上次升级以来?
- scala - Kafka Streams DSL:如何关闭由流分支/分组创建的子流?