【发布时间】:2020-11-21 18:10:51
【问题描述】:
我有一个带有表单的页面,我正在尝试禁用提交时带有自定义禁用消息的按钮,并在使用 jquery 后提交表单。
<form>
<input type="text" name="run"/>
<input type="submit" class="send" value="Save" data-attr-message="Sending..."/>
</form>
我尝试了表单提交或表单[0]提交都没有提交表单,我尝试记录表单,表单正确记录到控制台,单击提交时控制台没有错误。
$(document).ready(function() {
$('.send').click(function(e) {
e.preventDefault();
e.stopPropagation();
var button = $(this);
var form = button.closest("form");
button.prop('disabled', true);
button.val($(this).attr('data-attr-message'));
console.log(form); //Logs form fine
form[0].submit();
// form.submit();
});
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<form>
<input type="text" name="run" />
<input type="submit" class="send" value="Save" data-attr-message="Sending..." />
</form>
【问题讨论】:
-
你遇到了什么错误?
-
你需要把最后一个
input改成button -
@holtc 不,这绝对没有必要 -> "
<input>submit类型的元素呈现为按钮。当click事件发生时(通常是因为用户单击按钮),用户代理会尝试将表单提交到服务器。” -
@rykamol,我没有收到任何错误,在 console.log 之后它什么也没做
-
我无法理解“使用 jquery 之后”是什么意思。短语。您自己决定是否使用 jquery?你是什么意思?您希望在哪种情况下启用按钮?
标签: javascript html jquery forms