任何人都可以帮助我在d3js中完成这项工作
我的html标签如下
<div id="source1"><ul><li>Source</li></ul></div>
我想通过删除DIV id source1中的所有UL LI标记并在div id source1中创建新的UL LI标记来修改<li>Source</li>
<li>some other text</li>
我的代码在这里
d3.selectAll("ul").remove()
d3.selectAll("li").remove()
var test=document.getElementbyId('source1');
var ul=document.createElement('ul');
document.body.appendChild(test);
test.appendChild(ul);
var li=document.createElement('li');
ul.appendChild(li);
li.innerHTML="some other text";
答案 0 :(得分:0)
这是应该有效的代码:
var test=document.getElementById('source1');
var li=test.children[0].children[0];
li.innerHTML="some other text";
您可以只更改文字,而不是重新创建元素。
答案 1 :(得分:0)
如果你的moto只是编辑li标签中的文字,你可以选择“innerHtml”javascript方法。这是最好的方法 例如
<div id="source1"><ul><li id="liId">Source</li></ul></div>
document.getElementById('liId').innerHTML="Some other text";
如果你想替换元素(在你的情况下,这不是必需的)你可以使用它,
<div id="source1">
<ul><li id="liId">Source</li></ul>
</div>
<script>
var para = document.createElement("li");
var node = document.createTextNode("Some other Text");
para.appendChild(node);
var parent = document.getElementById("source1");
var child = document.getElementById("liId");
parent.replaceChild(para,child);
</script>
希望这有帮助