jQuery 3.3

.ajaxSuccess()




jquery

.ajaxSuccess (معالج) إرجاع: jQuery

الوصف ؛: إرفاق وظيفة ليتم تنفيذها كلما اكتمال طلب Ajax بنجاح. هذا هو حدث أجاكس .

عند اكتمال طلب Ajax بنجاح ، يقوم jQuery بتشغيل حدث ajaxSuccess . يتم تنفيذ أي وكل معالجات تم تسجيلها باستخدام طريقة .ajaxSuccess() في هذا الوقت.

لمراقبة هذه الطريقة في العمل ، قم بإعداد طلب تحميل أياكس الأساسي:

<div class="trigger">Trigger</div>
<div class="result"></div>
<div class="log"></div>

إرفاق معالج الحدث بأي عنصر:

$(document).ajaxSuccess(function() {
  $( ".log" ).text( "Triggered ajaxSuccess handler." );
});

الآن ، قم بعمل طلب Ajax باستخدام أي طريقة jQuery:

$( ".trigger" ).on( "click", function() {
  $( ".result" ).load( "ajax/test.html" );
});

عندما يقوم المستخدم بالنقر فوق العنصر مع trigger فئة ويتم اكتمال طلب Ajax بنجاح ، يتم عرض رسالة السجل.

يتم استدعاء كافة معالجات ajaxSuccess ، بغض النظر عن اكتمال طلب Ajax. إذا كان يجب عليك التفريق بين الطلبات ، يمكنك استخدام المعلمات التي تم تمريرها إلى المعالج. في كل مرة يتم فيها تنفيذ معالج ajaxSuccess ، يتم تمرير كائن الحدث ، كائن XMLHttpRequest ، وكائن الإعدادات الذي تم استخدامه في إنشاء الطلب. على سبيل المثال ، يمكنك تقييد معاودة الاتصال للتعامل مع الأحداث التي تتناول عنوان URL معين فقط:

$( document ).ajaxSuccess(function( event, xhr, settings ) {
  if ( settings.url == "ajax/test.html" ) {
    $( ".log" ).text( "Triggered ajaxSuccess handler. The Ajax response was: " +
      xhr.responseText );
  }
});

ملاحظة: يمكنك الحصول على محتويات Ajax التي تم إرجاعها بالنظر إلى xhr.responseXML أو xhr.responseText لـ xml و html على التوالي.

ملاحظات إضافية:

  • اعتبارًا من jQuery 1.9 ، يجب إرفاق document بجميع معالجات الأحداث العالمية لـ .ajaxSuccess() jQuery ، بما في ذلك تلك التي تمت إضافتها باستخدام طريقة .ajaxSuccess() .
  • إذا تم $.ajax() أو $.ajaxSetup() مع الخيار global لتعيين false ، لن يتم تشغيل الأسلوب .ajaxSuccess() .

مثال:

عرض رسالة عند اكتمال طلب Ajax بنجاح.

$( document ).ajaxSuccess(function( event, request, settings ) {
  $( "#msg" ).append( "<li>Successful Request!</li>" );
});