我在一个页面上有几个表单,它们是使用ajaxForm提交的,并显示上传进度。每个表单都有相同的类".input_form"、唯一的id和一个名称为"category"且具有唯一值的隐藏输入字段。以下是原始示例:http://jquery.malsup.com/form/progress.html
var bar = $('.bar');
var percent = $('.percent');
var status = $('#status');
$('.input_form').ajaxForm({
beforeSend: function() {
status.empty();
var percentVal = '0%';
bar.width(percentVal)
percent.html(percentVal);
},
uploadProgress: function(event, position, total, percentComplete) {
var percentVal = percentComplete + '%';
bar.width(percentVal)
percent.html(percentVal);
},
complete: function(xhr) {
status.html(xhr.responseText);
$('#activity_feed_load').load(querybuild());
$('.wall_cat_selected').removeClass('wall_cat_selected');
$('.input_form, .arrow').hide();
var percentVal = '0%';
bar.width(percentVal)
percent.html(percentVal);
$('.input_form').resetForm();
}
});
在complete函数中,我想检索提交表单的id或提交表单中隐藏字段的值。我尝试了以下操作,但没有成功。
var value = $('.input_form .category').fieldValue(); alert('The category is: ' + value[0]);
基本上,我不知道如何检索($this)提交的表单。
谢谢你的帮助!
好的,我刚刚从一个相关的SO问题中找到了如何做到这一点:
如何在jquery ajaxform插件中使用$(this)
基本上,我只需要在我的ajaxForm函数中添加以下内容:
success: function(html, status, xhr, myForm) {
alert(myForm.attr('id'));
}
希望这能帮助其他人。
好的,我刚刚从这里的一个相关SO问题中找到了如何做到这一点:
如何在jquery ajaxform插件中使用$(this)
基本上,我只需要在我的ajaxForm函数中添加以下内容:
success: function(html, status, xhr, myForm) {
alert(myForm.attr('id'));
}
希望这能帮助其他人。