ปํญหา 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 แล้วทำงานต่อ หรือก็วิธีแก้ใขปัญหาไหมครับ
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 แล้วทำงานต่อ หรือก็วิธีแก้ใขปัญหาไหมครับ
ให้เรียกใช้ด้วย getElementById ตลอดครับ เพื่อประกันว่ามันจะหากันเจอ
ถ้ามันมีโอกาศ error ก็สามารถทดสอบก่อนด้วย getElementById ได้ครับ
if(document.getElementById('text')){
// do some thing
}
ขอบพระคุณอย่างสูงครับ อาจารย์กรด