js 动态插入表格设置样式 js设置样式

js 动态插入表格设置样式 js设置样式

Js代码
  • var mytable = document.getElementById(“propertyTable”);   
  • var row = mytable.insertRow();   
  • 方法一:设置css class方式,如下,“table01-td01″为一css class样式

    Js代码
  • var mytd= row.insertCell();   
  • mytd.className=”table01-td01″;  
  • 方法二:直接设置style属性,如下

    Js代码
  •  row .style.backgroundColor=”#FFFFFF”  ;//设置行的背景色   
  •   
  •   
  • td=row .insertCell();         //添加单元格   
  • td.style.cssText=”BORDER-BOTTOM:   #4a75ce   1px   solid”;     
  • //设置单元格的样式   
  •   
  • td.innerHTML=”<input name=button type=button   />”;     
  •  //添加td中的内容


<script type="text/javascript">
  
  function findPosX(obj) {
  var curleft = 0;
  
  if (obj.offsetParent) { //返回父类元素,大多说offsetParent返回body
     while (obj.offsetParent) {//遍历所有父类元素
      curleft += obj.offsetLeft;//当前元素的左边距
      obj = obj.offsetParent;       
     }
  } else if (obj.x) curleft += obj.x;
  return curleft;
  }
  
  function findPosY(obj) {
  var curtop = 0;  
  if (obj.offsetParent) {
     while (obj.offsetParent) {
  
      curtop += obj.offsetTop;
      obj = obj.offsetParent;
     }
  } else if (obj.y) curtop += obj.y;
  return curtop;
  }
  function showdiv(vart,obj,weekdiv,theme,endtime,status,endtime)
  {
   //alert(vart)
   //var test = $(obj).parent().parent();
   //alert(findPosY(obj.parentElement.parentElement))
   //alert(test.outerHTML)
   //alert($(obj).parent().parent().attr("offsetHeight"))
   
   var   ccell=document.getElementById("showtable").getElementsByTagName('tr')[1].getElementsByTagName('td')[0];
   
   //var   ccellz=document.getElementById("showtable").getElementsByTagName('tr')[1].getElementsByTagName('td')[5];
   //alert(findPosX(ccellz)+45-);
   //alert();
   //status=status.replace("'","@").replace("/","#").replace(">","*").replace("<","&").replace(" ","");
   //status=status.replace("'","w").replace("/","u").replace(">","v").replace("<","x").replace(" ","");
   
   status = status.replace(/w/g, "'").replace(/u/g, "/").replace(/v/g, ">").replace(/x/g, "<").replace(/k/g, " ");
   endtime=endtime.replace(/w/g, "-");
   //endtime=endtime.replace("-","w");
    //var tempstatus="";
    
    //endtime=endtime.replace("@","-");
    //alert(status+"--"+endtime);        
   //var   ccell   =   document.all.tags( "table")[1].rows[1];  
   //alert(document.all.tags( "table")[1].tagName);
   //return
   //alert(ccell.innerHTML);
   
    var te="weekdiv_"+weekdiv;   
      var tempobj= document.getElementById(te);
   if(tempobj.style.display=="block")
   { 
    // tempobj.style.left=findPosX(ccell);
      //tempobj.style.top=findPosY(obj.parentElement.parentElement)+$(obj).parent().parent().attr("offsetHeight");
       //tempobj.style.className="PositionObj";
       var   ccellz=document.getElementById(""+(vart)+"_s");
       //var   ccellz=document.getElementById("showtable").getElementsByTagName('tr')[obj.parentElement.parentElement.parentElement.rowIndex].getElementsByTagName('td')[0];
       ccellz.rowSpan=ccellz.rowSpan-1;
       var table = document.getElementById("showtable");
  
     table.deleteRow(obj.parentElement.parentElement.parentElement.rowIndex+1);

       obj.src="images/jtbottom.jpg";
       obj.title="查看上次记录";
       tempobj.style.display="none";
      
      
      
   }else
   {
    // tempobj.style.left=findPosX(ccell);
       //tempobj.style.top=findPosY(obj.parentElement.parentElement)+$(obj).parent().parent().attr("offsetHeight");
      // tempobj.style.className="TableBg3";
      
       var table = document.getElementById("showtable");
       //td.parentElement.rowIndex //
       //alert(obj.parentElement.parentElement.parentElement.rowIndex);
      // alert("行"+vart+"出"+counttemp);
      
      //alert(obj.parentElement.parentElement.parentElement.innerHTML);
      //得到一行的第一个单元格
      //var   ccellz=document.getElementById("showtable").getElementsByTagName('tr')[obj.parentElement.parentElement.parentElement.rowIndex].getElementsByTagName('td')[0];
      //alert(obj.parentElement.parentElement.parentElement.rowIndex);
      //alert(ccellz.rowSpan+"--"+ccellz.innerHTML);
      //设置单元格跨行加1
      //得到一行的第一个单元格
       var   ccellz=document.getElementById(""+(vart)+"_s");
       ccellz.rowSpan=ccellz.rowSpan+1;
     var newRow = table.insertRow(obj.parentElement.parentElement.parentElement.rowIndex+1);//在指定位置插入行
     //newRow.style.backgroundColor="blue";
    
    // var tempi= newRow.rowIndex;
    // alert(tempi);
    for(var i=0;i<5;i++)
    {
     var cellstr=newRow.insertCell(i);
     if(i==0)
     {
      cellstr.innerHTML = theme;
      cellstr.style.cssText="text-align:center;background:url(/newworktask/request/images/TableBg2.gif) repeat-y";  
       
      
     }else  if(i==1)
     {
      cellstr.innerHTML = endtime;
      cellstr.style.cssText="text-align:center;background:url(/newworktask/request/images/TableBg2.gif) repeat-y";    
     }else  if(i==2)
     {
      cellstr.innerHTML = status;
      cellstr.style.cssText="text-align:center;background:url(/newworktask/request/images/TableBg2.gif) repeat-y";    
     }else if(i==3)
     {
      cellstr.innerHTML = endtime;
      cellstr.style.cssText="text-align:center;background:url(/newworktask/request/images/TableBg2.gif) repeat-y";    
     }else
     {
      cellstr.innerHTML="";
      cellstr.style.cssText="text-align:center;background:url(/newworktask/request/images/TableBg2.gif) repeat-y";   
     }
    }
    
      
       obj.src="images/jtTop.jpg";
       obj.title="关闭上次记录";
       tempobj.style.display="block";
   }
    
  }

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
实现表格添加、删除数据并带样式设置的示例代码如下: HTML: ```html <table id="myTable"> <thead> <tr> <th>Name</th> <th>Age</th> <th>Gender</th> <th>Action</th> </tr> </thead> <tbody> <tr> <td>John Smith</td> <td>32</td> <td>Male</td> <td><button onclick="deleteRow(this)">Delete</button></td> </tr> </tbody> </table> <form id="myForm"> <input type="text" name="name" placeholder="Name"> <input type="text" name="age" placeholder="Age"> <select name="gender"> <option value="male">Male</option> <option value="female">Female</option> </select> <button type="submit" onclick="addRow()">Add</button> </form> ``` JavaScript: ```javascript // 添加function addRow() { // 获取表单数据 const form = document.getElementById("myForm"); const name = form.elements["name"].value; const age = form.elements["age"].value; const gender = form.elements["gender"].value; // 创建新行 const table = document.getElementById("myTable"); const row = table.insertRow(-1); const cell1 = row.insertCell(0); const cell2 = row.insertCell(1); const cell3 = row.insertCell(2); const cell4 = row.insertCell(3); cell1.innerHTML = name; cell2.innerHTML = age; cell3.innerHTML = gender; cell4.innerHTML = '<button onclick="deleteRow(this)">Delete</button>'; // 设置样式 row.style.backgroundColor = "#f2f2f2"; } // 删除行 function deleteRow(btn) { const row = btn.parentNode.parentNode; row.parentNode.removeChild(row); } ``` 以上代码实现了一个简单的表格添加、删除数据并带样式设置的功能。其中 `addRow()` 函数用于添加新行,`deleteRow(btn)` 函数用于删除行。在添加新行时,我们获取表单数据,创建新行并插入表格中,最后设置新行的样式。在删除行时,我们获取要删除的行并从表格中移除。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值