Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 表单提交按钮在ajax发布后保持禁用状态_Jquery_Ajax_Html_Forms - Fatal编程技术网

Jquery 表单提交按钮在ajax发布后保持禁用状态

Jquery 表单提交按钮在ajax发布后保持禁用状态,jquery,ajax,html,forms,Jquery,Ajax,Html,Forms,我有一个页面,上面有我正在构建的CRM的多个表单。每个表单都有名称等,因此在这方面没有问题。但是,我确实遇到了一个问题,即在生成$.post()后,submit按钮仍然处于禁用状态 下面是我提交表单的通用post处理程序 $("form") .bootstrapValidator() .on('success.form.bv', function(e) { // Prevent form submission

我有一个页面,上面有我正在构建的CRM的多个表单。每个表单都有名称等,因此在这方面没有问题。但是,我确实遇到了一个问题,即在生成$.post()后,submit按钮仍然处于禁用状态

下面是我提交表单的通用post处理程序

    $("form")
        .bootstrapValidator()
        .on('success.form.bv', function(e) {
            // Prevent form submission
            e.preventDefault();

            // Get the form instance
            var $form = $(e.target);

            // Get the BootstrapValidator instance
            var bv = $form.data('bootstrapValidator');
            console.log($form.serialize());
            $.post( "/post/", $form.serialize(), function(data) {
                    if(data) {
                        toastr.success("The form data has been updated.","Form Saved");
                    } else {
                        toastr.error("Please try to save again.","Failed");
                    }
                } , "json" // I expect a JSON response
            ).error(function() {
                    toastr.error("Please try to save again.","Failed");
            });

    });
是否有一种通用方法可以重新启用当前表单的“提交”按钮。有很多嵌套的HTML,因此按钮的位置因表单而异


提前谢谢。

我不知道禁用是什么意思,是不是意味着禁用了html标记

如果是,可以使用Jquery删除禁用的attr吗

在$.post函数下添加此jquery行以删除该属性

$.post( "/post/", $form.serialize(), function(data) {    
    $form.find("input[type=submit]").removeAttr('disabled');

我在代码中没有看到按钮上的disabled属性,您的意思可能是它保持了焦点。在这种情况下,您只需删除元素
$(“#表单按钮”).blur()上的焦点即可

该按钮实际上是html5
按钮
。所谓禁用,我的意思是按钮被禁用,也就是说,不可点击,带有“disabled”属性。似乎验证器正在某处做一些事情。如果我单击submit按钮,它会工作两次,但需要对表单数据进行一些更改才能重新启用。这是我添加的代码
$form.find(“按钮[type=submit]”)
就在
}“json”
之前,也就是
toastr.error(“请再次尝试保存。”,“失败”)之后