表单发送时Jquery更改禁用按钮

问题描述:

我有一个按钮,只有当表单有效时,才能看到按钮。 我写这篇文章:表单发送时Jquery更改禁用按钮

function submit_form(){ 
var('#button2').attr('disabled',true); 
$.ajax({ 
    type : "POST", 
    data : $('#formset').serialize(), 
    success : function(json) { 
     console.log(json); 
     console.log("form sent!"); 
    }, 
    $('#button2').attr('disabled', false); 
    error : function(xhr,errmsg,err) { 
     console.log('error occured'); 
    } 
}); 

} ,但它不工作。错误在哪里?

+0

错误在这个变量声明:'VAR( '#BUTTON2')ATTR( '禁用',真正的);' –

只要你需要改变prop

使用prop()

这似乎在第一线var('#button2')

function submit_form(){ 
$('#button2').prop('disabled',true); 
$.ajax({ 
    type : "POST", 
    data : $('#formset').serialize(), 
    success : function(json) { 
     console.log(json); 
     console.log("form sent!"); 
     $('#button2').prop('disabled', false); 
    }, 

    error : function(xhr,errmsg,err) { 
     console.log('error occured'); 
    } 
}); 
+0

更新我的代码,在控制台我可以看到 “形式发送!”,但按钮仍然被禁用... – kaja

+0

您需要启用一次表单发送时的密码@kaja? –

你试图把按钮进入成功功能错误?

function submit_form(){ 
var('#button2').attr('disabled',true); 
$.ajax({ 
    type : "POST", 
    data : $('#formset').serialize(), 
    success : function(json) { 
     console.log(json); 
     console.log("form sent!"); 
     $('#button2').attr('disabled', false); 
    }, 

    error : function(xhr,errmsg,err) { 
     console.log('error occured'); 
    } 
}); 

function submit_form(){ 
var('#button2').attr('disabled',true); 
$.ajax({ 
    type : "POST", 
    data : $('#formset').serialize(), 
    success : function(json) { 
     console.log(json); 
     console.log("form sent!"); 
    $("#button2").attr("disabled",false); 
// $("#button2").prop("disabled",false); 
// can use prop instead of attr 

}, 
    error : function(xhr,errmsg,err) { 
     console.log('error occured'); 
    } 
}); 
+0

心理解释多一点? –

试试这个。

无论ajax请求是否成功完成,您都应该启用按钮。

function submit_form() { 
    $('#button2').prop('disabled',true); 
    $.ajax({ 
     type : "POST", 
     data : $('#formset').serialize(), 
     success : function(json) { 
      console.log(json); 
      console.log("form sent!"); 
     }, 

     error : function(xhr,errmsg,err) { 
      console.log('error occured'); 
     }, 

     complete: function() { 
     $('#button2').prop('disabled', false); 
     } 
}); 
+0

它不工作不幸...可以在html的reaseon? kaja