Rumah >hujung hadapan web >tutorial js >Bagaimanakah Saya Boleh Dapatkan Teks Respons AJAX dengan betul dalam Prototype.js?

Bagaimanakah Saya Boleh Dapatkan Teks Respons AJAX dengan betul dalam Prototype.js?

Barbara Streisand
Barbara Streisandasal
2024-12-18 10:58:10429semak imbas

How Can I Properly Retrieve AJAX Response Text in Prototype.js?

Mendapatkan semula Teks Respons AJAX

Apabila bekerja dengan AJAX menggunakan prototaip, adalah penting untuk memahami cara mendapatkan semula teks respons untuk pemprosesan selanjutnya. Kod asal yang anda berikan:

somefunction: function(){
    var result = "";
    myAjax = new Ajax.Request(postUrl, {
        method: 'post',
        postBody: postData,
        contentType: 'application/x-www-form-urlencoded',
        onComplete: function(transport){
            if (200 == transport.status) {
                result = transport.responseText;
            }
        }
    });
    return result;
}

mungkin tidak mengembalikan nilai yang diingini kerana sifat tak segerak AJAX. Berikut ialah pendekatan yang lebih baik:

Meluluskan Fungsi Panggilan Balik

Daripada mengembalikan respons secara langsung, tentukan fungsi panggil balik sebagai parameter untuk beberapa fungsi(). Fungsi panggil balik ini akan digunakan apabila permintaan AJAX selesai:

somefunction: function(callback){
    var result = "";
    myAjax = new Ajax.Request(postUrl, {
        method: 'post',
        postBody: postData,
        contentType: 'application/x-www-form-urlencoded',
        onComplete: function(transport){
            if (200 == transport.status) {
                result = transport.responseText;
                callback(result);
            }
        }
    });
}

Dalam fungsi lain, anda kini boleh memanggil somefunction() dan menyediakan panggilan balik untuk memproses teks respons:

somefunction(function(result){
  alert(result);
});

Dengan menggunakan fungsi panggil balik, anda boleh memastikan bahawa hasilnya dikendalikan apabila permintaan AJAX selesai, menghapuskan isu rentetan respons kosong.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Dapatkan Teks Respons AJAX dengan betul dalam Prototype.js?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn