$('form').ajaxForm
({
beforeSend: function()
{
// for example i need get current id form here how can ?
// codes
},
uploadProgress: function(event, position, total, percentComplete)
{
// codes
},
success: function()
{
// codes
},
complete: function(xhr)
{
// codes
}
});
我在页面中使用了 2 个不同 id 的表单,例如:
<form id="sample1"></form>
<form id="sample2"></form>
我需要在$('form').ajaxForm中获取当前表单ID。怎么能做到呢?
在 @a.4j4vv1 答案的帮助下,这里有一个完整的解决方案:
$(function(){
var currentform; //declare variable here
$("form[id^='sample']").ajaxForm ({ //"form[id^='sample']" means all forms with id starting with the word 'sample'
beforeSubmit: function(formData, jqForm) {
currentform = jqForm[0]; //retrieve form and assign variable here
},
beforeSend: function() {
console.log("Ajax BeforeSend from "+currentform.id);
},
uploadProgress: function(event, position, total, percentComplete) {
console.log("Ajax uploadProgress from "+currentform.id);
},
success: function() {
console.log("Ajax success from "+currentform.id);
},
complete: function(xhr) {
console.log("Ajax complete from "+currentform.id);
}
});
});
在 Ajax 表单插件中获取当前表单 ID 的正确选择是:
beforeSubmit: function(formData, jqForm) {
// return current form id
var form = jqForm[0].id;
}
我找到了一种方法:
我添加了此事件并工作.
beforeSerialize: function($form, options)
{
alert($form.attr('id'));
return false;// return false to cancel submit
}
谢谢。