javascript - 禁用提交按钮后表单未提交

标签 javascript jquery html forms jquery-events

我有一个带有提交按钮的 HTML 表单。我希望此按钮在单击时被禁用。但我也希望提交表单。

我没有使用 ajax 请求来提交表单。处理表单的 PHP 脚本需要很长时间。因此,一些用户只需在几秒钟后单击它,表单就会被提交两次,从而导致数据库中有两行具有相同的数据。

到目前为止,这是我尝试过的

<form method="POST" action="xyz.php">
    <input type="text" name="fields[]" />
    <input type="text" name="fields[]" />
    <input type="text" name="fields[]" />
    <input type="text" name="fields[]" />
    <input type="submit" onclick="$(this).attr('disabled', true);" value="Submit" />
</form>

提交按钮上的 onclick 事件禁用了该按钮,但它也不允许提交表单。但我想要提交表单,还希望禁用该按钮。

最佳答案

你可以试试下面的代码 onclick="this.disabled=true;this.form.submit();this.value='正在提交...';"

关于javascript - 禁用提交按钮后表单未提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51707132/

相关文章:

html - 使用Pandoc进行markdown输出时,奇数span标签该怎么办

javascript - 在 Chrome 控制台中

javascript - React Hooks,如何在两个函数之间共享状态

javascript - 将 ul 显示为下拉列表

javascript - 每 10 tr 使用 10n jquery

javascript - jQuery:ajax 数据的对象文字数组

javascript - 使用绝对值创建 Div

jquery - 显示加载图像进度,直到在 ASP.Net webform 中下载实际图像

jquery - Bootstrap 3 导航栏填充和元素背景

javascript - 如何获取输入的新属性值