Stack Overflow와 JavaScript에서 처음 사용되었습니다. 그래서 우선, 모두에게 안녕하세요. 그리고 당신의 도움에 미리 감사드립니다.innerHTML을 사용할 수 없습니다.
나는 Incomedia Website X5 Evolution을 사용하여 웹 사이트를 만들고 있습니다. 페이지 중 하나에서 서버의 데이터로 테이블을 채우고 싶습니다. 그래서 테이블을 만들고 각 셀에 다음 HTML 코드를 삽입했습니다.
<!--#0000,0000-->
값은 행과 열을 나타냅니다. 각 셀의 값을 변경하기 위해 자바 스크립트를 작성했습니다. 그러나 innerHTML을 사용하여 HTML pahe의 내용을 대체하려고 할 때 작동하지 않습니다. 그럼에도 불구하고 오래된 HTML 내용과 새로운 HTML 내용이 동일하기 때문에 모든 것이 정확합니다. 원래 변수를 다시 사용하더라도 여전히 작동하지 않습니다.
문제가있는 곳을 알려주세요.
여기에 자바 스크립트 코드 : 당신은 설정
<script>
var i;
var div = document.getElementById('imTableObject_1');
div = document.getElementsByTagName('table');
var htmlContent = div[0].innerHTML;
var newHtmlContent = div[0].innerHTML;
var test = div[0].innerHTML;
var row,col;
//I can't understand why the scrip stop running at this line. I didn't change anything...
div[0].innerHTML = newHtmlContent ;
for (i=htmlContent.length - 5; i > -1; i--) {
if(htmlContent.charAt(i)=='#') {
//alert(i);
//alert(htmlContent.substring(i+6,i+10));
row = parseInt(htmlContent.substring(i+1,i+5));
col = parseInt(htmlContent.substring(i+6,i+10));
newHtmlContent = insertText(row,col,newHtmlContent,i);
};
};
alert(div[0].innerHTML);
alert(newHtmlContent);
//This does not work
div[0].innerHTML = newHtmlContent ;
alert("Done !");
function insertText (row, col, text, index) {
var length;
var newText;
length = getTextLength (text,index + 13);
//alert(htmlContent.substring(index+13,index+13+length));
newText = text.substring(0,index+13);
newText += "Titi too !";
newText += text.substring(index+13+length,text.length);
//alert(newText);
return newText ;
}
function getTextLength (text,startIndex) {
var i = 0;
for(i = startIndex ; i < text.length ; i++) {
//alert(text.substring(i,i+7));
if(text.substring(i,i+7) == "</span>") {
return i - startIndex ;
};
};
return -1;
}
</script>
가'당신에게 확신 :
는 나는 여기서 일하는 얻을 수 있었다? 그리고 주변의'for' 루프가 올바르게 실행됩니까? – Ian경고에서 무엇을 얻습니까? –
또한 HTML을 포함 할 수 있습니까? 그것은 도움이 될 것입니다 –