我如何从javascript函数写入html?

时间:2014-01-10 08:49:49

标签: javascript html

我的javascript和html有问题

我试图使用我的javascript函数编写一个html元素 这是我的代码

function write();
{
 for(var i=0;i<arr.length;i++)
 {
  document.write("<td>"+arr[i]+"</td><br>")
 }
}

和我的index.html上的代码,我想把那个写入我的表行

<tr>
<script>write();</script>
</tr>

我已将javscript附加到我的html文档中,但没有任何反应 你能帮我把make功能搞定吗? 谢谢你们!

4 个答案:

答案 0 :(得分:3)

根据你的问题描述,对于编写html或dom元素说,你需要先创建元素(直到你已经拥有,在这种情况下你可以使用document.getElementById()),然后添加文本。

用于创建:

# Create new dom element
var td = document.createElement("td");

添加文字:

td.appendChild(document.createTextNode('hiii'))

在您的情况下:

function write(){
  var element;
  for(var i=0;i<arr.length;i++) {
    element = document.createElement("td");
    element.appendChild(document.createTextNode(arr[i]));
  }
}

答案 1 :(得分:1)

为您的行添加如下ID:

<tr id="myRow">

</tr>

另外我建议你在javascript文件中实现函数调用。 尝试这样的事情:

window.onload = function(){
    write();
};

function write(){
    for(var i = 0; i < arr.length; i++){
        document.getElementById("myRow").innerHTML += "<td>" + arr[i] + "</td><br>";
    }
}

答案 2 :(得分:0)

你可以查看下面的html:

<table>
   <tr id="myid" >

   </tr>
</table>

和javascript会是这样的

var row = document.getElementById("myid");
var x = row.insertCell(0);
x.innerHTML="New cell";

答案 3 :(得分:0)

HTML:

<table>
    <tr id='row'></tr>    
</table>

JS:

function write(arr) {
    var row = '';

    for (var i = 0; i < arr.length; i++) {
        row += '<td>'+arr[i]+'</td>'
    }

    document.getElementById('row').innerHTML = row;
}

write(['a', 'b', 'c', 'd']);

工作演示:http://jsfiddle.net/uhaEL/