Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/429.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如果必填字段有输入,如何使表单仅提交?_Javascript - Fatal编程技术网

Javascript 如果必填字段有输入,如何使表单仅提交?

Javascript 如果必填字段有输入,如何使表单仅提交?,javascript,Javascript,在我按下警报按钮之前,我已经能够让这段代码工作了,但是我需要给用户一些通知,表单已经提交了,尽管实际上不需要在任何地方提交。email、phone和name字段是必填字段,但对于我现在收到的警报,即使必填字段为空,它也会发出提交接收警报 联系我们 const name=textField.checkValidity; const email=emailField.checkValidity; const phone=telField.checkValidity; 函数亚整数{ 警报谢谢您的反馈

在我按下警报按钮之前,我已经能够让这段代码工作了,但是我需要给用户一些通知,表单已经提交了,尽管实际上不需要在任何地方提交。email、phone和name字段是必填字段,但对于我现在收到的警报,即使必填字段为空,它也会发出提交接收警报

联系我们 const name=textField.checkValidity; const email=emailField.checkValidity; const phone=telField.checkValidity; 函数亚整数{ 警报谢谢您的反馈。您的表格已提交。; } 形式{ 保证金:0自动; 对齐内容:居中对齐; 文本对齐:居中; 字体系列:“开放式Sans压缩”,无衬线; 宽度:35%; } 汉堡店

将于2020年4月在米村设立新位置

姓名: 电邮: 电话: 查询原因: 餐饮 私人聚会 反馈 另外 传统信息: 你去过餐馆吗? 不 对 与您联系的最佳时间: M T W Th F 提交 德克萨斯州休斯顿格雷街305号,邮编77004 713-555-6752


首先,为输入添加一个id。第二:

function submitAlert() {
 if (('.contact-form').find('input[type=text],select')) {
  alert("Thank you for your feedback. Your form has been submitted.");
 }
}
查看输入是否正在发送值。

在表单的提交事件中检查表单的有效性,而不是在每个字段上调用checkValidity并在页面加载时立即执行。不要在submit按钮的click事件中执行此操作。如果它有效,则不执行任何操作,让submit事件继续并执行其操作。如果不是,请使用取消事件

注:

将脚本元素放在代码末尾附近,就在标记之前,这样当浏览器到达该点时,所有页面HTML都将被解析到内存中并可访问

例如 onclick或onsubmit。将所有事件绑定在单独的 JavaScript部分。 元素必须放置在元素内。 ,喜欢或喜欢。 元素不应仅用于视觉样式。改用CSS。 联系我们 形式{ 保证金:0自动; 对齐内容:居中对齐; 文本对齐:居中; 字体系列:“开放式Sans压缩”,无衬线; 宽度:35%; } 标签{font-weight:bold;}/*不要使用。格式化是用CSS完成的*/ 汉堡店

将于2020年4月在米村设立新位置

姓名: 电邮: 电话: 查询原因: 餐饮 私人聚会 反馈 另外 传统信息: 你去过餐馆吗? 不 对 与您联系的最佳时间: M T W Th F 提交 德克萨斯州休斯顿格雷街305号,77004 713-555-6752

//您是否使用JavaScript进行事件绑定,而不是使用onsubmit之类的内联HTML事件属性 document.querySelectorform.addEventListenersubmit,submitAlert; //所有事件回调将自动获得传递给它们的事件 函数submitAlertevent{ //由于引发事件的是表单元素,因此将引用 信息技术 如果这是有效期{ 警报谢谢您的反馈。您的表格已提交。; }否则{ event.preventDefault;//停止提交事件。 } }
checkValidity做什么?你的验证脚本在哪里?我想把checkValidity拿出来,我想我验证了表单实际代码中的输入。例如,如果在没有submitAlert函数的情况下没有填写名称等,它会通知我需要输入名称。虽然id可以工作,但通常最好不要添加id,而是使用其他方法(类、位置或其他选择器)访问DOM元素。基于ID的解决方案很脆弱,很难支持和扩展。Scott,你说得对!谢谢你把它添加到我的答案中!这不会返回我的警报