我试图在点击后禁用按钮并想要显示处理图像, 但它不起作用。我的代码如下:
$('#own_message_post').ajaxForm(function(data) {
$("#loading_img").css("visibility", "visible");
$('#submit_form_button').attr("disabled", true);
$('#own_message_post').append('<img src="images/loader.gif" alt="posting" id="message_post_loading_img" style="text-align: center"/>');
$('#messages').prepend(data);
$('#text_message').val("");
$('#fileupload').val("");
$('#submit_form_button').removeAttr('disabled');
$('#message_post_loading_img').remove();
});
答案 0 :(得分:0)
我认为您没有正确使用ajaxForm
,它接受Options Object
,而是传递function
。
在你的案例中会起作用的是:
$('#own_message_post').ajaxForm({
beforeSubmit: function() {
// Here you can do the things that need doing before the form is submitted
$('#submit_form_button').prop("disabled", true);
$('#own_message_post').append('<img src="images/loader.gif" alt="posting" id="message_post_loading_img" style="text-align: center"/>');
},
success: function(){
// Here you can do the things that need doing when all is done
$('#submit_form_button').prop("disabled", false);
$('#message_post_loading_img').remove();
}
});
由于看起来您正在上传文件,因此查看uploadProgress
回调可能会很有用,这可能会传回有关上传进度的信息。
答案 1 :(得分:0)
从jquery 1.6开始使用prop()
$('#submit_form_button').prop("disabled", true);
和
$('#submit_form_button').prop("disabled", false);
而不是
$('#submit_form_button').removeAttr('disabled');