Javascript onclick 函数停止工作所需的 HTML5

标签 javascript html

你好,

我正在处理一个表单,其中我的所有文本字段都有一个必需的属性;我注意到,当我单击提交时,必需属性不会显示弹出窗口来验证字段是否为空。

我的页面上有两个提交按钮,它们都使用 onclick 提交表单功能;一个打开一个新选项卡,另一个提交表单并转到新页面。

出于调试目的,我删除了打开新选项卡的按钮,并删除了第二个按钮上的 onclick 属性,它起作用了;我整天都在谷歌搜索,但我似乎无法找到我目前遇到的相同场景。

我相信这与我的 JS 有关,但我不确定要在我的代码中添加或删除什么;请在下面查看我的代码。

JavaScript

 function submitForm(action,newtab)
 {
    document.getElementById('add2').target = newtab ? '_blank' : '_self';
    document.getElementById('add2').action = action;
    document.getElementById('add2').submit();
 }

HTML

 <form id="add2" action="add5.php" method="post">
 <input placeholder="First Name" tabindex="1"
 name="fname" maxlength="128" size="30" required>
 <input placeholder="Last Name" tabindex="12"
 name="lname" maxlength="128" size="30" required>
 <button tabindex="3" value="Save"
 name="save" onclick="submitForm('add3.php',1);" 
 type="submit">Child Information</button>
 <button tabindex="4" value="Save"
 name="save" onclick="submitForm('add5.php',0);" 
 type="submit">Save Details</button>
 </form>

我有一个按钮属性,但我已将其设置为 type="submit"并且我非常确定它可以正常工作,因为我在删除 onclick 函数时已经对其进行了测试;我的问题是我是否可以在不删除 JavaScript 的 onclick 函数的情况下使用 required 属性?

非常感谢任何帮助。

最佳答案

我找到了问题的答案,问题是我将 onClick 方法绑定(bind)到提交。 onClick 将首先触发,这会导致它通过验证器。

解决方案是我将 HTML 代码中的 onClick 更改为 onSubmit。

<button tabindex="3" value="Save"
name="save" onsubmit="submitForm('add3.php',1);" 
type="submit">Child Information</button>
<button tabindex="4" value="Save"
name="save" onsubmit="submitForm('add5.php',0);" 
type="submit">Save Details</button>

关于Javascript onclick 函数停止工作所需的 HTML5,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28459708/

相关文章:

javascript - 如何使用 JavaScript 捕获来自网络选项卡的请求?

javascript - 将方法转换为 Promise : Nodejs

javascript - 根据页面滚动更改div位置

javascript - 我无法让我的按钮响应某个功能

html - 如何在css中的两个图像之间添加段落

c# - ASP.NET MVC 将类和图像添加到 anchor 元素

html - chrome 的边框问题

javascript - 使用 html 和 javascript 停止和启动服务

javascript - 为什么在使用字符集 : x-user-defined with XMLHttpRequest? 时有些字节以 0xf7 为前缀

html - object-fit 对图像没有调整大小的影响