ปํญหา is null or not an object ใน IE

ปํญหาการหา document.getElementById("test") แล้วใน IE เด้งว่า is null or not an object



ex

<form name='frm' id='frm'>

<input type='hidden' name='test' id='test' value='001'>

</form>

<div id='tar' name='tar'></div>



แล้วทำการ

setTimeout("get_details()",200);



function get_details(){

 document.getElementById("tar").innerHTML=document.frm.test.value;

}



แต่ในโปรแกรมจริงๆ  <input type='hidden' name='test' id='test' value='ค่านี้จะเปลี่ยนแปลงตลอด'>

ตัวอย่างแบบคราวๆ



รันตอนแรกๆ มันก็ไม่มีปํญหาอะไร  แต่พอสักพัก ใน IE กลับเด้งว่า 'document.frm.test' is null or not an object



ทำไมจึงเป็นแบบนี้ครับ ย้ำว่าเป็นในเฉพาะ IE เท่านั้นครับ พอ Error แล้วโปรแกรมก็หยุดทำงานทันทีเลย



มีวิธีทำให้โปรแกรมไม่ต้องแจ้ง Error แล้วทำงานต่อ หรือก็วิธีแก้ใขปัญหาไหมครับ  
07 พ.ย. 2553 เวลา 20:57 น. 2 2,348

document.getElementById("tar").innerHTML=document.getElementById("test").value;



ให้เรียกใช้ด้วย getElementById ตลอดครับ เพื่อประกันว่ามันจะหากันเจอ



ถ้ามันมีโอกาศ error ก็สามารถทดสอบก่อนด้วย getElementById ได้ครับ



if(document.getElementById('text')){

  // do some thing

}
#1

ได้แล้วครับ คือต้องข้ามเวลาที่พี่ IE แกตาฟ่าฟาง มองไม่เห็น element อยากให้ microsoft ตัดแว่นงามๆ ใส่ให้พี่แกสักอัน จะได้ตาดีเหมือน FIREFOX เลื่อนปรื้ดดๆ ไม่มีสดุด



ขอบพระคุณอย่างสูงครับ อาจารย์กรด
#2
ความคิดเห็น
ไฟล์อัปโหลด ชนิด jpg, jpeg ขนาดไฟล์ไม่เกิน 1024
^