我怎样才能运行后*表单提交事件的一些JavaScript *?(How can I run some

2019-07-31 06:21发布

我的工作,可能需要几秒钟就可以提交HTML表单上。 我想它提交禁用某些字段的形式。

我可以在一个处理器上的表格我们做到这一点submit事件,但形式之前提交的火灾。 如果我禁用控件,接着,它们的值不包括在发送到服务器后的数据。

我试着取消在我的处理程序提交事件,删除我的submit从表单事件处理程序,通过JavaScript提交表单自己, 然后禁用控制,但问题有,我需要知道用户点击了哪个按钮提交表单。 这个信息是在原来的形式提交,但显然不是在一个我手动触发(因为没有按钮被单击)。

我可以尝试复制此信息到我的手册的形式提交,但有没有办法表单提交后运行我的禁用代码?

Answer 1:

不要让通过禁用提交按钮还提出,你不需要做任何事情。 另外,隐藏的形式,并与一些旋转这样用户就迷惑,以为重要的事情正在发生更换。



Answer 2:

submiting表格后,您可以触发这个函数:

function name() {
    $("#target :input").attr("disabled", true);
    return true;
}

此代码将禁止从“目标”为ID的元素全部来自领域的后裔。

这个版本只是匹配所有的输入元素:

function name() {
    $("#target input").attr("disabled", true);
    return true;
}

你必须包括jQuery库用于此代码工作。



Answer 3:

这是几乎一样的sp00m的答案,但是它使用的Javascript原生提交防止递归调用。

$('#myForm').submit(function() {
    this.submit();
    disableFields(); // your own function
    return false;
});


Answer 4:

你可以使用jQuery的.post()提交,并.button().click()来检测被点击哪个按钮

.post()需要一个函数来执行提交完成后,



文章来源: How can I run some JavaScript *after* a form submit event?