确实<;输入类型=提交/>;在幕后使用javascript


Did <input type=submit /> uses javascript behind the scenes

这个type="submit"的例子背后有javascript吗?

<html>
<head>
</head>
<body>
    <form action="process.php" method="post">
        Username: <input type="text" name="username" value=""/><br />
        Password: <input type="text" name="username" value=""/><br />
        <input type="submit" value="Submit"/>
    </form>
</body>



因为将数据输入提交到服务器的另一种方式是这样的。

<html>
<head>
    <script>
        function submit(form){
            form.submit();
        }
    </script>
</head>
<body>
    <form action="process.php" method="post">
        Username: <input type="text" name="username" value=""/><br />
        Password: <input type="text" name="username" value=""/><br />
        <input type="button" value="Submit" onclick="submit(this.form);" />
    </form>
</body>



如果是这样的话,那么我们就不需要javascript来将数据发送到服务器了??我说得对吗?

如果使用<input type='submit'>,则无需添加JavaScript。在这种情况下,即使禁用了JavaScript,浏览器也会提交表单。

如果您想使用JavaScript提交表单,那么您可以使用您编写的上述方法。在这种情况下,您可以使用任何其他控件,单击即可提交。

因此,很明显,<input type='submit'>不使用任何JavaScript。

您给定的示例不使用javascript向服务器提交数据。默认情况下,提交按钮会将表单中的所有信息发送到服务器。然而,您可能需要javascript来处理诸如错误检查和发布之类的事情,而不需要重新加载单个页面。

上面代码片段中提到的示例不使用javascript进行表单提交。点击时带有type="submit"的输入按钮具有提交表单的默认行为。

因此,无论浏览器中启用了Javascript,表单都将使用提交按钮提交。此外,我们可以通过以下代码片段使用javascript提交表单

document.formName.submit();