js 动态添加行,删除行,并获得select中值赋予 input
<html>
<head>
<title>Ace Test</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.0/jquery.min.js"></script>
<script language="JavaScript">
var cGetRow=-99999;
function insertrow(){
var newrow = document.all.newTB.rows[0].cloneNode(true); //克隆一行
document.all("newTB").appendChild(newrow); //添加刚才克隆的一行
var objs = document.getElementsByName("project1");
objs[objs.length-1].value="";
}
function GetRow(){
//获得行索引
//两个parentElement分别是TD和TR,rowIndex是TR的属性
//this.parentElement.parentElement.rowIndex
cGetRow=window.event.srcElement.parentElement.parentElement.rowIndex;
DelRow(cGetRow);//点击checkbox时,直接删除行。
}
function DelRow(iIndex){
//删除一行
if(iIndex==-99999){
alert("系统提示:没有选中行号!");
}else{
newTB.deleteRow(iIndex);
iIndex==-99999;//将rowIndex恢复默认值。
}
}
function GetPidValue(st){
// var chooseVal = st.innerText;
//alert("选择的值是:" + chooseVal);
//$("#result").val("Hello world!");
cGetRow=window.event.srcElement.parentElement.parentElement.rowIndex;
var tableInfo = "";
var tableObj = document.getElementById("newTB");
//alert( tableObj.rows[cGetRow].cells.length)
var Cell=tableObj.rows[cGetRow].cells[1].innerHTML
var b=document.getElementsByName('project')[cGetRow];//这里也可以用getElementById
var selectValue;
for(var i=0;i<b.length;i++){
if(b[i].selected==true){
selectValue=b[i].innerText;
}
}
var objs = document.getElementsByName("project1");
objs[cGetRow].value=selectValue;
}
</script>
</head>
<body class="dialog_body">
<form method="POST" onSubmit="return doSubmit(this)">
<table border="1" width="900" cellpadding="0" cellspacing="0" class="table">
<!-- 隐藏table,用于克隆的行 begin -->
<tbody id="ACE_HIDDEN_TABLE" >
</tbody>
</table>
<!-- 隐藏table,用于克隆的行 end -->
<table border="1" width="900" cellpadding="0" cellspacing="0" class="table">
<!-- 插入新行的区域 begin -->
<tbody id="newTB">
<tr>
<td width="16%">
<select id="pid" name="project"" onchange="GetPidValue(this)">
<option value=""></option>
<option value="0">
人员编号
</option>
<option value="1">
姓名
</option>
</select>
</td>
<td width="16%">
<input id="result" name="project1" type="text" value="" >
</td>
<td><input type="button" value="删除" onClick="GetRow()"/></td>
</tr>
</tbody>
<!-- 插入新行的区域 end -->
</table>
<div align="right" style="margin:10px;">
<input type="button" onClick="insertrow();" value="增加一行">
<input type="button" onClick="DelRow(cGetRow);" value="删除一行">
</div>
</form>
</body>
</html>
js 动态添加行,删除行,并获得select中值赋予 input的更多相关文章
- js动态参数作为Object的属性取值
js动态参数作为Object的属性取值var myObj = {"a":1,"b":2};var a = 'a';myObj[a] 就可以获取到 属性a的值了
- js动态添加删除行,兼容ie和火狐
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- js动态添加行
<script> $(function() { //增加上传 var addli = function() { var linum = parseInt($(".pic-wrap ...
- js获得checkbox选中值及input后面的文本
原文:http://blog.csdn.net/u014079773/article/details/51865596 js如何获得多个checkbox选中的值及input后面所跟的文本 <!d ...
- js动态的往表格中加入表单元素
效果如图: 这里我用的是layui的静态表格,其他框架也是一样的(只要你都表单元素要通过js进行渲染),我的需求是在表单中放了表格的元素,表格中还有表单的元素.表格中的行数据是js动态添加的,正常的添 ...
- Easyui中使用jquery或js动态添加元素时出现的样式失效的解决方法
Easyui中使用jquery或js动态添加元素时出现的样式失效的解决方法 2014-03-27 11:44:46| 分类: Easy UI|举报|字号 订阅 可以使用$.parser.pa ...
- JS动态改变select选择变更option的index值
document.getElementById("louyuming").options[0].selected=true; function jsSelectIsExitItem ...
- UEditor js动态创建和textarea中渲染【原】
UEditor动态创建和textarea中渲染 http://ueditor.baidu.com/website/examples/textareaDemo.html <!DOCTYPE> ...
- js 获取select的值 / js动态给select赋值
jQuery获取Select选择的Text和Value:语法解释:1. $("#select_id").change(function(){//code...}); //为Se ...
随机推荐
- hive与hbase整合过程
实现目标 Hive可以实时查询Hbase中的数据. hive中的表插入数据会同步更新到hbase对应的表中. 可以将hbase中不同的表中的列通过 left 或 inner join 方式映射到hiv ...
- [转载]ARM协处理器CP15寄存器详解
用于系统存储管理的协处理器CP15 原地址:http://blog.csdn.net/gameit/article/details/13169405 MCR{cond} coproc,opc ...
- 1.ARM的基础知识
ARM简述 ARM公司既不生产芯片也不销售芯片,它只出售芯片技术授权.ARM技术具有很高的性能和功效,因而容易被厂商接受.同时,合作伙伴的增多,可获得更多的第三方工具.制造和软件支持,这又会使整个系统 ...
- 用Spring+Junit4.4进行测试(使用注解)
http://nottiansyf.iteye.com/blog/345819 使用Junit4.4测试 在类上的配置Annotation @RunWith(SpringJUnit4ClassRunn ...
- Server Name Indication(SNI)
转载自: http://openwares.net/misc/server_name_indication.html Server Name Indication是用来改善SSL(Secure Soc ...
- OC中copy的使用
@property内存管理策略的选择 1.非ARC 1> copy : 只用于NSString\block: 2> retain : 除NSString\block以外的OC对象: 3&g ...
- 添加AppWidget功能
要为程序添加AppWidget 1 首先要建立一个继承于AppWidgetProvider的类 MyWidget public class MyWidget extends AppWidgetProv ...
- nodejs + ionic2 + cordova环境搭建
1.nodejs 下载地址:https://nodejs.org/zh-cn/,执行默认安装就可以,可执行命令 node(环境变量) 2.修改 npm 源,执行:npm config set regi ...
- PHP命名空间的作用、为什么使用命名空间?
命名空间一个最明确的目的就是解决重名问题,PHP中不允许两个函数或者类出现相同的名字,否则会产生一个致命的错误.这种情况下只要避免命名重复就可以解决,最常见的一种做法是约定一个前缀. 举个栗子:项目中 ...
- GMM的EM算法实现
转自:http://blog.csdn.net/abcjennifer/article/details/8198352 在聚类算法K-Means, K-Medoids, GMM, Spectral c ...