-2

重複の可能性:
JavaScript - document.write に代わるものは何ですか?

私は数秒後に実行したいjavascript関数を作成していますが、実行するとすべてのページコンテンツが削除され、document.write()を使用して表示している結果のみが表示されますここに私のjavascriptコードがあります。

<script language="javascript">
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
 xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}

setTimeout(function(){
xmlhttp.open("GET","some.xml",false);
xmlhttp.send();
xmlDoc=xmlhttp.responseXML;
var x=xmlDoc.getElementsByTagName("offer");
var page = parseInt(x.length) / 10;
document.write("<div class='pagination_btn_cont'>");
for (i=1;i<=page;i++)
{ 
 document.write("<div class='pagination_btn'>"+i+"</div>");
}
document.write("</div>");
},10000);

</script>

Webページを開くと、ページのすべてのコンテンツが表示されますが、10秒後にページが空白になり、ループから取得した数字のみが表示されます。

このタスクをどのように行うことができるかについての提案。

4

3 に答える 3

3

特定の要素のテキストを変更するには、innerHtmlを使用します。

HTML

<div id="container"></div>

javascript

document.getElementById('container').innerHTML += '<div>content</div>';

または、jQueryライブラリを使用すると、作業がはるかに簡単になります。

$("#container").append("<div>content</div>");
于 2012-10-01T07:58:29.833 に答える
2

javascript で innerHTML を使用できます。ページの内容に影響を与えることなく、特定の div にデータを挿入するために使用します。

例:

var results = "";
for(var i=1;i<=10;i++)
{
     results += "<div class='pagination_btn'>"+i+"</div>";
}
document.getElementById("your result show div id").innerHTML = results;

$('.pagination_btn').bind("click")...document.ready 内で指定できます

于 2012-10-01T07:57:25.980 に答える
0

これを試して

document.getElementsByTagName('body').innerHTML += '<div id="parent" class="pagination_btn_cont">';

for (i=1;i<=page;i++)
{ 
 document.getElementById('parent').innerHTML = "<div class='pagination_btn'>"+i+"</div>";
}
于 2012-10-01T08:07:42.447 に答える