JS生成表格

今天遇到一个问题,如何通过JS生成表格。

解决方案如下:

//创建新表

 function CreateTable() {

 var table = document.getElementById('Newtb');
  var NewRow = table.insertRow();
      NewRow.id = createId(); //新建ID

  var taskId = table.rows.length - 1;
    var cell2 = NewRow.insertCell();

 cell2.innerHTML = '<input type="hidden" id ="hdf+ NewRow.id + '" name ="hdf" value="' + NewRow.id + '" >'

如果需要换行,以便代码更加清晰。采用如下方式:通过+拼接起来。

  +' <div style="border: 1px solid #1862A1; margin-top: 20px">'

 需要做的是在innerhtml 中,通过''将HTML内容括起来。。然后每个控件的ID和NAME不一样,这就必须为每一个控件弄个新ID

}

//创建无重复的ID

        function createId() {
            return Math.round(Math.random() * 1000000);
        }

2:如果我们对生成的表格不满意,我们可以通过第一行的隐藏域来删除它。

代码如下:

  function del(id) {

            var table = document.getElementById("'Newtb'");
            var flag = 0;
            for (i = 0; i <= table.rows.length; i++) {
                if (document.getElementsByName("hdf")[i].value == id) {
                    document.getElementById('<%=delTable.ClientID%>').value = document.getElementById('<%=delTable.ClientID%>').value + id + '\,';
                    table.deleteRow(i);
                    flag = i;
                    break;
                }
            }
        }

 这里需要创建一个delTable的隐藏域。

然后进行保存之类的。。。

后台循环添加新表通过:Literal进行展现。

使用 StringBuilder,添加数据。。

 

posted @ 2012-02-02 18:24  Jack.G  阅读(4134)  评论(0编辑  收藏  举报