ปัญหา: ในระหว่างกระบวนการพัฒนามันจะถูกใช้ในการวนเข้าไปในตารางแล้ววนเข้าสู่ TD ไม่มีปัญหาในเบราว์เซอร์อื่น แต่มีการรายงานข้อผิดพลาดใน IE9 และเวอร์ชันต่อไปนี้:
ได้รับคำตอบใน Google: เพราะฉันไม่รู้ข้อผิดพลาดมาก่อนฉันไม่สามารถหาวิธีแก้ปัญหาเกี่ยวกับ Baidu ได้ ต่อมาฉันค้นหาด้วย Google ชาวต่างชาติบางคนพบปัญหานี้และชี้ให้เห็นปัญหา: http://www.aachin.info/techen/error-on-ie-9-script600-invalid-target-element-for-his-operation/?amp; รหัส:
การคัดลอกรหัสมีดังนี้:
<! doctype html>
<html lang = "zh-cn">
<head>
<meta http-equiv = "content-type" content = "text /html; charset = utf-8" />
<title> ชื่อเริ่มต้น </title>
</head>
<body>
<table id = "myTable" cellpadding = "1" cellpacing = "0">
<tr>
<td> 222 </td>
</tr>
</table>
<script type = "text/javascript">
var mytable = document.getElementById ('myTable');
var tr = mytable.getElementsByTagname ('tr') [0];
var td = mytable.getElementsByTagname ('td') [0];
// อ่าน innerhtml (ไม่มีการรายงานข้อผิดพลาดใน IE รุ่นใดก็ได้ IE6 ยังไม่ได้รับการทดสอบ)
การแจ้งเตือน (mytable.innerhtml);
การแจ้งเตือน (tr.innerhtml);
การแจ้งเตือน (td.innerhtml);
// เขียนถึง innerhtml
// mytable.innerhtml = '<tr> <td> 11111 </td> </tr>'; // IE9 และข้อผิดพลาดต่อไปนี้
// tr.innerhtml = '<td> 11111 </td>'; // IE9 และข้อผิดพลาดต่อไปนี้
// td.innerhtml = '11111'; // ทุกเวอร์ชันไม่ได้รายงานข้อผิดพลาด (IE6 ไม่ได้ทดสอบ)
// โซลูชันใช้วิธีการทำงานดั้งเดิมหรือวิธีการใช้งานตารางของ DOM
// var btnrow = mytable.insertrow ();
// var cell = btnrow.insertCell (btnrow.getElementSbyTagname ('td'). ความยาว);
// cell.innerhtml = "ข้อความ html บางอย่าง";
</script>
</body>
</html>
สรุป: แอตทริบิวต์ InnerHTML ของตารางและ TR นั้นอ่านได้อย่างเดียวใน IE9 และด้านล่าง คุณสามารถใช้เพื่ออ่านค่าในตารางหรือ TR แต่ไม่สามารถเขียนได้ หากคุณเขียนมันจะรายงานข้อผิดพลาด นอกจากนี้ InnerHTML ของ TD นั้นสามารถอ่านได้และเขียนได้ใน IE9 และด้านล่าง วิธีแก้ปัญหา: ดูรหัสตัวอย่างสำหรับวิธีการใช้งาน DOM ดั้งเดิมหรือวิธีการใช้งานตาราง