ฉันต้องการใช้ jQuery ajax เพื่อดึงข้อมูลจากเซิร์ฟเวอร์
ฉันต้องการใส่นิยามฟังก์ชันการเรียกกลับสำเร็จนอก.ajax()
บล็อกดังต่อไปนี้ ดังนั้นฉันต้องประกาศตัวแปรdataFromServer
ดังต่อไปนี้เพื่อที่ฉันจะสามารถใช้ข้อมูลที่ส่งคืนจากการเรียกกลับสำเร็จได้หรือไม่
ฉันเคยเห็นคนส่วนใหญ่กำหนดการเรียกกลับสำเร็จภายใน.ajax()
บล็อก รหัสต่อไปนี้ถูกต้องหรือไม่หากฉันต้องการกำหนดการเรียกกลับความสำเร็จภายนอก
var dataFromServer; //declare the variable first
function getData() {
$.ajax({
url : 'example.com',
type: 'GET',
success : handleData(dataFromServer)
})
}
function handleData(data) {
alert(data);
//do some stuff
}
deferred objects
? ฉันไม่เคยเห็นมาก่อน นอกจากนี้ดูเหมือนว่าจะยุ่งเล็กน้อยเนื่องจากรหัสที่กำหนดสิ่งที่จะโทรกลับไปใช้อยู่ในตำแหน่งที่แตกต่างจากการโทร AJAX จริง