GORAGOD.com

GORAGOD.com

freelance, web developer, web designer, hosting, domain name

Run javascript หลังจากโหลดหน้าที่เรียกด้วย Ajax

สืบเนื่องจากการใช้ javascript จากหน้าที่เรียกผ่าน ajax ครับ ซึ่งสามารถใช้งานได้ตามปกติ



ผมต้องการให้ function ที่เขียนด้วย javascript ทำงานหลังจากที่โหลดหน้าดังกล่าวเรียบร้อยแล้ว (หน้าที่โหลดขึ้นมาด้วย ajax) โดยผมลองใช้วิธีการดังนี้ครับ



1. เขียน tag <body onload="JavaScript:test.init;"> ในหน้าที่เรียกขึ้นมาด้วย ajax ผลปรากฏว่าไม่ทำงาน

2. เขียน tag <script type="text/javascript"> window.onload = test.init; </script> ใส่ไว้ท้ายสุดของหน้าก็ไม่ทำงาน 

3. ใช้ $G(window).addEvent('load', function() {}) ตามบทที่ 3 ก็ยังไม่สำเร็จ



แต่ถ้าใช้ event Onclick กับ element สักตัวนึงในหน้านี้ก็สามารถใช้ javascript ได้ตามปกติ และ javascript อื่นๆที่ใช้กับหน้านี้ก็ใช้งานได้ครบถ้วน จึงอยากทราบว่าจะใช้วิธีไหน เพื่อให้สามารถ run javascript หลังจากโหลดหน้าที่เรียกขึ้นมาด้วย ajax ได้ครับ
05 ต.ค. 2553 1 3,337

ปกติแล้ว มันทำไม่ได้นะครับ ซึ่งผมเคยบอกหลายครั้งแล้วว่า เราไม่สามารถใช้งาน Javascript ในหน้าที่ถูก Ajax เรียกได้



ทางแก้ไขคือ เอาฟังก์ชั่นที่ต้องการไปใส่ไว้หลังจากที่ Ajax โหลดเรียบร้อยครับ



req.onreadystatechange = function () {

  // เขียนคำสัง javascript ที่ต้องการที่นี่

}
#1
ความคิดเห็น
ไฟล์อัปโหลด ชนิด jpg, jpeg ขนาดไฟล์ไม่เกิน 64M
^