كائن النموذج داخل رد اتصال خطأ ajaxForm
سؤال
أحاول الوصول إلى كائن النموذج الخاص بي داخل طريقة خطأ ajaxForm:
$('#foo').ajaxForm({
error: function(){
// where's my $('#foo') object?
}
});
يمكن أن يستغرق الخطأ 3 معلمات، لكن لا أحد منهم يمثل كائن النموذج، كما يؤدي هذا أيضًا إلى إرجاع عنوان url، ولكن مرة أخرى لا يوجد نموذج.
أي اقتراحات؟
المحلول
وصعب، لماذا لا تستخدم:
var myForm = $("#foo");
myForm.ajaxForm({
error: function(){
myForm.//whatever
}
});
إذا كان هناك وسيلة أخرى، وأنا أحب أن أعرف نفسي.
نصائح أخرى
في ajaxForm يمكن الوصول إلى عنصر النموذج نفسه في beforeSubmit
قسم:
$('#foo').ajaxForm({
beforeSubmit: function(formData, jqForm) {
var myform = jqForm[0];
/*
If there are multiple forms in the selector,
each form is accessible with its order in the array
*/
}
error: function(){
// where's my $('#foo') object?
//It is here: myform
}
});
إذا كنت تقرأ علامة التبويب "العمل مع الحقول" في مستندات أن البرنامج المساعد، وأعتقد أنك سوف تجد جوابك.
لأداء، ربما يجب عليك تخزين مرجع إلى النموذج قبل ربط ajaxForm.
$(document).ready(function() {
$foo = $('#foo');
$foo.ajaxForm({
error: function() {
alert($('#fieldId', $foo).fieldValue()[0]);
}
});
});
هل this
لا تعمل؟ أي بمعنى.
$('#foo').ajaxForm({
error: function(){
alert($(this).attr('name'));
}
});
لا تنتمي إلى StackOverflow