2

我试图在不使用 jQuery 的情况下更改 div 的内容。我想按 id 或 class 选择 div。

我设法让附加工作:

function appendHtml(targetC, htmldata) {
    var theDiv = document.getElementById(targetC);
    var newNode = document.createElement('div');
    newNode.innerHTML = htmldata;
    theDiv.appendChild(newNode) 
}

但无法弄清楚如何更改一个文本..

有任何想法吗?

4

4 回答 4

5

看到这个小提琴的基本样本

<html>
<head>
<script>
    function bold(targetC) {
        var theDiv = document.getElementById(targetC);
        theDiv.innerHTML = '<b>' + theDiv.innerHTML + '</b>';
    }
</script>
</head>

<body onload='bold("message")'>
   <div>Hello, World!</div>
   <div id="message">What a nice day!</div>
</body>
</html>
于 2013-03-08T14:55:03.540 回答
0

编辑:

<div id="foo">old text</div>   

JS代码:

function appendHtml(targetC, htmldata) {
    var theDiv = document.getElementById(targetC);
    theDiv.innerHTML = htmldata;
}

appendHtml('foo', 'new text');

这是一个小提琴:http: //jsfiddle.net/7QjcB/

于 2013-03-08T14:49:00.597 回答
0

只需使用更改 div 的 htmlinnerHTML

var anyDiv = document.getElementById(targetID);

html = "content";
anydiv.innerHTML(html);

作为您提供的功能的变体:

function changeHtml(targetC, htmldata) {
    var theDiv = document.getElementById(targetC);
    theDIV.innerHTML = htmldata;

}

于 2013-03-08T14:52:10.223 回答
0

这是一个可能会回答您的问题的小提琴。我所做的只是先获取元素,然后将其传入。

function appendHtml(targetC, htmldata) {
var newNode = document.createElement('div');
newNode.innerHTML = htmldata;
targetC.appendChild(newNode);
}

var getDiv = document.getElementById("testing");
于 2013-03-08T15:21:21.333 回答