Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/256.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 触发html表单提交,就像单击按钮一样(但没有按钮)?_Javascript_Html_Forms_Validation - Fatal编程技术网

Javascript 触发html表单提交,就像单击按钮一样(但没有按钮)?

Javascript 触发html表单提交,就像单击按钮一样(但没有按钮)?,javascript,html,forms,validation,Javascript,Html,Forms,Validation,如果您有一个和一个,并单击提交按钮,它将执行默认表单验证,例如检查是否需要。它通常会说请填写此字段。 但是,例如,如果我通过$(“form”).submit()以编程方式提交表单,它将在不执行任何检查的情况下提交表单 是否有一种更简单的方法可以使用本机JavaScript执行默认表单验证?在表单元素上似乎只有checkValidity()返回true或false。如果我在输入本身上调用相同的本机函数,它实际上什么都不做 下面是我的意思的演示代码: 我想这可能就是你想要的答案: JavaScrip

如果您有一个
和一个
,并单击提交按钮,它将执行默认表单验证,例如检查是否需要
。它通常会说
请填写此字段。

但是,例如,如果我通过
$(“form”).submit()以编程方式提交表单,它将在不执行任何检查的情况下提交表单

是否有一种更简单的方法可以使用本机JavaScript执行默认表单验证?在
表单
元素上似乎只有
checkValidity()
返回
true
false
。如果我在
输入
本身上调用相同的本机函数,它实际上什么都不做

下面是我的意思的演示代码:

我想这可能就是你想要的答案:

JavaScript:

document
.getElementById('button')
.addEventListener("click",function(e) {
     document.getElementById('myForm').validate();
});
HTML:

<form  id="myForm" >
First name: <input type="text" name="FirstName"  required><br>
Last name: <input type="text" name="LastName" required><br>
<button id="button">Trigger Form Submit</button>
</form>

名字:
姓氏:
触发表单提交

演示:

对于仍在挣扎的人:

您可以使用
约束验证API
-


提交
const form=document.querySelector(“表单”);
document.getElementById(“保存”).addEventListener(“单击”,e=>{
e、 预防默认值();
if(form.checkValidity()){
控制台日志(“提交…”);
}否则{
form.reportValidity();
}
});
退房并在这里玩:


我希望它能帮助你或给你一些想法

OP没有要求使用jQuery。@NotroioUSPET0从jQuery更改为JavaScript。如果我的表单中没有按钮怎么办?(这就是我问这个问题的原因)你是说我们不能单独触发按钮执行的行为吗?@codenamezero每当你想提交表单时,只要执行这个文档即可。getElementById(“#myForm”).validate();是的,但我总是得到
类型错误:$(…)。验证不是一个函数。在我提出有关stackoverflow的问题之前,我已经搜索并尝试了一些可能的解决方案。似乎本机函数只有
form
元素中的
checkValidity
,没有其他功能。我认为
validate
是5年后的jQuery plugin.LOL。XD但是是的,我想在点击时连接到一个事件监听器会起作用。:D LOL-是的-我是一只乌龟。无论如何,我使用了按钮并单击了一个
事件,但是该代码可以在任何事件中使用-您需要的是表单引用,以便您可以
检查
报告
;)