添加行并删除行

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<script language="javascript">
 function doAdd()
 {
  otb = document.getElementById("aa");  //定义内表格对象otb。 
  
  var rowslegth = otb.rows.length;  //获取当前层内表格的行数。
  rowslegth = rowslegth +1;
  oTr = otb.insertRow(otb.rows.length);
  if(rowslegth%2!=0)
  {
  oTr.style.backgroundColor='#FFFFFF';
  }
  else
  {
  oTr.style.backgroundColor='#EFF7F9';
  }
  oTr.className = 'zi';
  var Rowsid = otb.rows.length;
  
  oTd =   oTr.insertCell(0);//插入列
  oTd.align = 'right';
  oTd.className = 'list_td';
  oTd.innerHTML="<select name='component_grid:_ctl"+rowslegth+":COMPONENT' id='component_grid__ctl"+rowslegth+"_selCOMPONENT' οnchange='ChangeCOMPONENT(this.options(this.selectedIndex).value,this.id)' size='1'><option selected='selected' value='0'>选择构件</option></select>";

  oTd =   oTr.insertCell(1);
  oTd.align = 'left';
  oTd.className = 'list_td';
  oTd.innerHTML = "asdf";
  
  oTd =   oTr.insertCell(2);
  oTd.align = 'center';
  oTd.className = 'list_td';
  oTd.innerHTML="<select name='component_grid:_ctl"+rowslegth+":selColor' id='component_grid__ctl"+rowslegth+"_selColor' size='1' οnchange='ChangeColor(this.options(this.selectedIndex).value,this.id);'><option selected='selected' value='0'>选择颜色</option></select>";
  
  oTd =   oTr.insertCell(3);
  oTd.align = 'center';
  oTd.className = 'list_td';
  oTd.innerHTML="<input name='component_grid:_ctl"+rowslegth+":txtNum' type='text' id='component_grid__ctl'+rowslegth+'_txtNum' size='10' />";
  
  
  oTd =   oTr.insertCell(4);
  oTd.align = 'center';
  oTd.className = 'list_td';
  oTd.innerHTML="<input name='component_grid:_ctl"+rowslegth+":txtLength' type='text' id='component_grid__ctl"+rowslegth+"_txtLength' size='10' />";
  
  
  oTd =   oTr.insertCell(5);
  oTd.align = 'center';
  oTd.className = 'list_td';
  oTd.innerHTML="<input name='component_grid:_ctl"+rowslegth+":txtWidth' type='text' id='component_grid__ctl"+rowslegth+"_txtWidth' size='10' />";
  
  
  oTd =   oTr.insertCell(6);
  oTd.align = 'center';
  oTd.className = 'list_td';
  oTd.innerHTML="<textarea name='component_grid:_ctl"+rowslegth+":txtDES' rows='2' cols='20' id='component_grid__ctl"+rowslegth+"_txtDES'></textarea>";
  
  
  oTd =   oTr.insertCell(7);
  oTd.align = 'center';
  oTd.className = 'list_td';
  oTd.innerHTML="<a href='#' id='component_grid__ctl"+rowslegth+"_del' οnclick='DelRow(this);return false;'>删除</a>";
  
  oTd =   oTr.insertCell(8);
  oTd.align = 'center';
  oTd.className = 'disTd';
  oTd.innerHTML="<input name='component_grid:_ctl"+rowslegth+":hidCOMPONENT_ID' id='component_grid__ctl"+rowslegth+"_hidCOMPONENT_ID' type='hidden' value='' />";
  
  oTd =   oTr.insertCell(9);
  oTd.align = 'center';
  oTd.className = 'disTd';
  oTd.innerHTML="<input name='component_grid:_ctl"+rowslegth+":hidPROJECT_SHELFTYPE_COMPONENT_ID' id='component_grid__ctl"+rowslegth+"_hidPROJECT_SHELFTYPE_COMPONENT_ID' type='hidden' value='' />"; 
   

 }
 function DelRow(tableid)
 {
  objT=document.getElementById(tableid);
  if(objT.rows.length==1)
  {
   alert("不可以删除首行");
   return;
  }
  else
  {
   if(confirm("确定要删除吗?"))
   {
    objT.deleteRow();
   }
  }
  
 }
  </script>
</HEAD>

<BODY>
<input type="button" value="add" onClick="doAdd();">
<input type="button" value="del" onClick="DelRow('aa')">

<table id="aa" width="60%" border=1>
<tr><td>ssdddddd</td></tr>
</table>
</BODY>
</HTML>
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在QTableWidget中添加删除按钮,可以使用QTableWidgetItem以及QPushButton来实现。具体步骤如下: 1. 在QTableWidget中插入QPushButton。可以使用setCellWidget方法,在指定单元格中插入QPushButton。 ``` QPushButton *btnDelete = new QPushButton("删除"); ui->tableWidget->setCellWidget(row, col, btnDelete); ``` 2. 为QPushButton添加点击事件。可以使用connect方法,将QPushButton的clicked信号连接到自定义的槽函数中。 ``` connect(btnDelete, SIGNAL(clicked(bool)), this, SLOT(onBtnDeleteClicked())); ``` 3. 在槽函数中获取当前,并删除。可以使用sender方法获取触发该事件的QPushButton对象,然后使用QTableWidget的removeRow方法删除。 ``` void MainWindow::onBtnDeleteClicked() { QPushButton *btnDelete = qobject_cast<QPushButton *>(sender()); if (btnDelete) { int row = ui->tableWidget->indexAt(btnDelete->pos()).row(); ui->tableWidget->removeRow(row); } } ``` 完整代码如下: ``` void MainWindow::initTableWidget() { ui->tableWidget->setColumnCount(2); ui->tableWidget->setHorizontalHeaderLabels(QStringList() << "姓名" << "性别"); QStringList names = {"张三", "李四", "王五", "赵六", "钱七"}; QStringList genders = {"男", "女", "男", "女", "男"}; for (int i = 0; i < names.size(); i++) { int row = ui->tableWidget->rowCount(); ui->tableWidget->insertRow(row); QTableWidgetItem *item1 = new QTableWidgetItem(names[i]); QTableWidgetItem *item2 = new QTableWidgetItem(genders[i]); ui->tableWidget->setItem(row, 0, item1); ui->tableWidget->setItem(row, 1, item2); QPushButton *btnDelete = new QPushButton("删除"); ui->tableWidget->setCellWidget(row, 2, btnDelete); connect(btnDelete, SIGNAL(clicked(bool)), this, SLOT(onBtnDeleteClicked())); } } void MainWindow::onBtnDeleteClicked() { QPushButton *btnDelete = qobject_cast<QPushButton *>(sender()); if (btnDelete) { int row = ui->tableWidget->indexAt(btnDelete->pos()).row(); ui->tableWidget->removeRow(row); } } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值