2014-08-28 4 views
0

getElementByID에 문제가있는 IE8에 대한 게시물을 이미 읽었지만 해결 방법을 찾을 수 없습니다. 내 코드는 지금 다음과 같이 보입니다 :IE8 및 getElementById가 제대로 작동하지 않습니다.

<script type="text/javascript"> 
//<![CDATA[ 
    function settext(id) { 
    switch(id) { 
      case "0": document.getElementById('text').innerHTML="something"; 
      break; 
      case "1": document.getElementById('text').innerHTML="again something"; 
      break; 
      default: document.getElementById('text').innerHTML="something the third"; 
      break; 
      } 
    } 
//]]> 
</script><select style="width: 145px" onchange="settext(this.value)"> 
<option value="-1">something</option> 
<option value="0">again</option> 
<option value="1">and so on</option> 
</select> 
<table width="100%" border="0" cellspacing="0" cellpadding="5" id="text"></table> 

Firefox, Chrome 및 IE10에서 잘 작동합니다. 나는 이것에 대해 도움을 얻게되어 기쁩니다.

미리 감사드립니다. IE8 this.value

+0

아무튼 정의하십시오 잘 작동하지 않습니다 :) –

+0

IE8에서'getElementById'에 문제가 있습니까 ??? – adeneo

+5

ID가 "text"인 항목이 없습니다. – mason

답변

0

는 문제가 아니라 을에서 getElementById. innerHTML을 텍스트가 아닌 노드로 설정한다고 생각합니다.

텍스트 노드에서 작동합니다.

UPDATE :

<!DOCTYPE html> 
<html> 
<head> 
<script type="text/javascript"> 
    function settext(id) { 
switch(id) { 
      case "0":document.getElementById('text').rows[0].cells[0].innerHTML="something"; 
      break; 
      case "1": document.getElementById('text').rows[0].cells[0].innerHTML="again something"; 
      break; 
      default: document.getElementById('text').rows[0].cells[0].innerHTML="something the third"; 
      break; 
      } 
    } 
</script> 
</head> 
<body> 
<select style="width: 145px" onchange="settext(this.options[this.selectedIndex].value)"> 
<option value="-1">something</option> 
<option value="0">again</option> 
<option value="1">and so on</option> 
</select> 
<table width="100%" border="1" cellspacing="0" cellpadding="5" id="text"><tr><td></td></tr></table> 
</body> 
</html> 

관련 답변을 : 당신은 테이블의 innerHTML을에 값을 설정할 수 없습니다, 당신이 아이의 세포 또는 행에 액세스하고 그런 식으로 변경해야 https://stackoverflow.com/a/4729743/1960455

+0

슬프게도 도움이되지 않았습니다. – Kendel

+1

document.getElementById ('text')를 말하면 페이지의 id가 "text"인 요소는 어디에 있습니까? – Abhi

+0

테이블 태그에 있음. 내 게시물을 편집했습니다. – Kendel

관련 문제