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 ...
随机推荐
- SparkStreaming(源码阅读十二)
要完整去学习spark源码是一件非常不容易的事情,但是咱可以积少成多嘛~那么,Spark Streaming是怎么搞的呢? 本质上,SparkStreaming接收实时输入数据流并将它们按批次划分,然 ...
- OAF_开发系列04_实现OAF查询4种不同的实现方式的比较和实现(案例)
2014-06-02 Created By BaoXinjian
- javascript网址收集
1.模块的写法http://www.ruanyifeng.com/blog/2012/10/javascript_module.html 2.模块规范 AMDhttp://www.ruanyifeng ...
- C#如何获取CPU处理器核心数量 z
有几条不同的处理器信息,您可以获得有关的信息:物理处理器数量.核心数量和逻辑处理器数量,这些可以不同.两颗双核超线程(启用)处理器的机器情况下有:2个物理处理器.4个核心和8个逻辑处理器. 逻辑处理器 ...
- Bugtags奉命解救宝贵的双手,务必将此文章转给你身边的程序猿
移动应用 Bug 快速反馈神器 前段时间,有很多 APP 突然走红,最终却都是樱花一现.作为一个创业团队,突然爆红是非常难得的机会.但是很可惜,由于没有经过充分的测试,再加上用户的激增,APP 闪退. ...
- emacs配置eslint 语法检查.找不到node解决
使用emacs配置eslint 当调用语法检查时报错 Suspicious state from syntax checker javascript-eslint: Checker javascrip ...
- 检测文件是否有BOM 头,并删除BOM头(php)
将下面文件放在网站根目录访问即可,它会遍历当前目录下所有子目录,检测文件是否含有BOM头,并删除BOM头 <?php //remove the utf-8 boms //by magicbug ...
- iOS开发 - OC - 实现本地数据存储的几种方式二(直接使用sqlite)
连接上一篇文章http://www.cnblogs.com/FBiOSBlog/p/5819418.html. 上一篇文章介绍了OC内部一些方法进行数据的本地存储,其中包括 NSUser类.Plist ...
- Eclipse连接VirtualBox中的Android x86
Android x86 Alt+F1打开命令行,命令netcfg查看当前ip,记住,然后Alt+F7回界面. Eclipse-Window-Preferences-Android-DDMS-Use A ...
- Kali连接数据库
bt5的metasploit下连接postgresql在<metasploit渗透测试指南>已经介绍很清楚了,但是kail下部分路径是不一样,我就来科普一下.求过审核1.首先开启postg ...