Bạn hiện đang ngoại tuyến, hãy chờ internet để kết nối lại

LỖI: Internet Explorer không thành công để thiết lập innerHTML tài sản của đối tượng chọn

QUAN TRỌNG: Bài viết này được dịch bằng phần mềm dịch máy của Microsoft chứ không phải do con người dịch. Microsoft cung cấp các bài viết do con người dịch và cả các bài viết do máy dịch để bạn có thể truy cập vào tất cả các bài viết trong Cơ sở Kiến thức của chúng tôi bằng ngôn ngữ của bạn. Tuy nhiên, bài viết do máy dịch không phải lúc nào cũng hoàn hảo. Loại bài viết này có thể chứa các sai sót về từ vựng, cú pháp hoặc ngữ pháp, giống như một người nước ngoài có thể mắc sai sót khi nói ngôn ngữ của bạn. Microsoft không chịu trách nhiệm về bất kỳ sự thiếu chính xác, sai sót hoặc thiệt hại nào do việc dịch sai nội dung hoặc do hoạt động sử dụng của khách hàng gây ra. Microsoft cũng thường xuyên cập nhật phần mềm dịch máy này.

Nhấp chuột vào đây để xem bản tiếng Anh của bài viết này:276228
Khước từ Nội dung trong Cơ sở Kiến thức Không còn được hỗ trợ
Bài viết này nói về các sản phẩm mà Microsoft không còn hỗ trợ nữa. Do đó, bài viết này được cung cấp "nguyên bản" và sẽ không được cập nhật.
TRIỆU CHỨNG
Khi bạn đặt thuộc tính innerHTML của chọn đối tượng, những thay đổi không có hiệu lực một cách chính xác.
GIẢI PHÁP
Nếu bạn phải sử dụng innerHTML, một workaround là sử dụng một đối tượng Div để bọc các yếu tố lựa chọn và sau đó thiết lập innerHTML tài sản cho đối tượng Div . Ví dụ:
<html><head><title>My Example</title><script language="Javascript">var origDivHTML;function init(){   origDivHTML = myDiv.innerHTML;}function setValues() {   var oldinnerHTML = "your original innerHTML: " + yourDiv.innerHTML ; 	   alert(oldinnerHTML);   yourDiv.innerHTML = origDivHTML;	    var curinnerHTML = "your current innerHTML: " + yourDiv.innerHTML ;    alert(curinnerHTML); }</script></head><body onload="init()"><div id="myDiv">  <select name="firstSelect" size="1" >    <option>11111</option>    <option>22222</option>    <option>33333</option>  </select></div><div id="yourDiv">  <select name="secondSelect" size="1" >    <option>aaaa</option>    <option>bbbb</option>    <option>cccc</option>  </select></div><button onclick = "setValues();">click me to set the values</button></body></html>				

Lý tưởng nhất, bạn nên sử dụng các bộ sưu tập tùy chọn để thêm các tùy chọn của một yếu tố lựa chọn. Các mã sau đây cho thấy ba cách để lập trình thêm lựa chọn vào các yếu tố lựa chọn:
<HTML><HEAD><TITLE></TITLE></HEAD><BODY><script>function fill_select1() {	for(var i=0; i < 100; i++) {			select1.options[i] = new Option(i,i);		}}function fill_select2() {		var sOpts = "<SELECT>";		for (var i=0;i<100;i++)		{			sOpts += '<OPTION VALUE="' + i + '">' + i + '</OPTION>\n';		}			select2.outerHTML = sOpts  + "</SELECT>";}function fill_select3() {	for(var i=0; i < 100; i++) {		   var oOption = document.createElement("OPTION");		   oOption.text="Option:  " + i;		   oOption.value=i;		   document.all.select3.add(oOption)		}}</script><H2>SELECT Box Population</H2><SELECT id=select1 name=select1></SELECT><INPUT type="button" value="Populate with options list" id=button1 name=button1 onclick="fill_select1();"><BR><BR><SELECT id=select2 name=select2></SELECT> <INPUT type="button" value="Populate with outerHTML" id=button2 name=button2 onclick="fill_select2();"><BR><BR><SELECT id=select3 name=select3></SELECT><INPUT type="button" value="Populate with using createElement" id=button3 name=button3 onclick="fill_select3();"></BODY></HTML>				
TÌNH TRẠNG
Microsoft đã xác nhận rằng đây là một lỗi trong các sản phẩm của Microsoft được liệt kê ở đầu của bài viết này.
THÔNG TIN THÊM

Các bước để tạo lại hành vi

Mẫu mã sau đây minh họa lỗi này:
<html><head><script language="JavaScript">  function test(){    var objSelect = document.all.idSelect;    var strOrigHTML     = objSelect.innerHTML;    objSelect.innerHTML = strOrigHTML;    var strNewHTML      = objSelect.innerHTML;    if (strNewHTML == strOrigHTML)        alert("Test passed.");    else        alert("Test failed: innerHTML = " + strNewHTML );}</script></head><body>  <select id="idSelect">    <option value="line1">Option 1</option>    <option value="line2">Option 2</option>  </select>  <input type="button" value="test" onClick="test()" /></body></html>				
THAM KHẢO
Để biết thêm chi tiết trên chọn đối tượng, xem các bài viết sau đây trên mạng nhà phát triển Microsoft (MSDN):Để biết thêm chi tiết về bộ sưu tập tùy chọn , xem bài viết sau đây trên MSDN:

Cảnh báo: Bài viết này được dịch tự động

Thuộc tính

ID Bài viết: 276228 - Xem lại Lần cuối: 05/17/2012 05:27:00 - Bản sửa đổi: 4.0

  • kbbug kbdhtml kbnofix kbmt KB276228 KbMtvi
Phản hồi