JS控制的动态表格
对应的js:
function pccAddSignRow() { //读取最后一行的行号,存放在LearnTRLastIndex文本框中
var pccTRLastIndex = findObj("pccTRLastIndex", document);
var rowID = parseInt(pccTRLastIndex.value);
var signFrame = findObj("pcc", document);
//添加行
var newTR = signFrame.insertRow(signFrame.rows.length);
newTR.id = "pccItem" + rowID;
//添加列:产品名称
//添加列内容
var h = '<option >请选择省</option>';
var id = 1;
var io = "txtPro" + rowID;
var tio = "txtCity" + rowID;
var oio = "txtCounty" + rowID;
callBizAPI("AddProvince", {//调用ajax获取数据
id: id
}, function (result) {//得到结果后:
for (var i in result) {
var iif = result[i].AreaId;
var ifro = result[i].AreaName;
h += '<option value="' + iif + '">' + ifro + '</option>';
}
var newNameTD = newTR.insertCell(0);
newNameTD.innerHTML = "<select class=\"txtW95\" id='txtPro" + rowID + "' onchange=\"addcityCopy('" + io + "','" + rowID + "')\" >'" + h + "'</select>";
//添加列:说明
var newNameTD = newTR.insertCell(1);
//添加列内容
newNameTD.innerHTML = "<select class=\"txtW95\" id='" + tio + "' onchange=\"addcountyCopy('" + tio + "','" + rowID + "')\" ></select>";
var newNameTD = newTR.insertCell(2);
//添加列内容
newNameTD.innerHTML = "<select class=\"txtW95\" id='txtCounty" + rowID + "'></select>";
//添加列:操作按钮
var newDeleteTD = newTR.insertCell(3);
//添加列内容 <button class='toolbtn' id='add" + rowID + "' onclick=\"pccAddSignRow()\"><img src='images/plus.png' />添加</button>
if (iii >= 2) {
var currentBtn = document.getElementById("add0");
currentBtn.style.display = "none";
newDeleteTD.innerHTML = "<button class='toolbtn' onclick=\"pccDeleteRow('pccItem" + rowID + "')\" ><img src='images/del.png'/>删除</button>"
}
else {
newDeleteTD.innerHTML = "<button class='toolbtn' onclick=\"pccDeleteRow('pccItem" + rowID + "')\" ><img src='images/del.png'/>删除</button>"
}
//将行号推进下一行
pccTRLastIndex.value = (rowID + 1).toString();
}
)
}
function pccDeleteRow(rowid) {
var signFrame = findObj("pcc", document);
var signItem = findObj(rowid, document);
//获取将要删除的行的Index
var rowIndex = signItem.rowIndex;
//删除指定Index的行
signFrame.deleteRow(rowIndex);
var currentBtn = document.getElementById("add0");
currentBtn.removeAttribute("style");
}
function findObj(theObj, theDoc) {
var p, i, foundObj;
if (!theDoc) theDoc = document;
if ((p = theObj.indexOf("?")) > 0 && parent.frames.length) {
theDoc = parent.frames[theObj.substring(p + 1)].document;
theObj = theObj.substring(0, p);
}
if (!(foundObj = theDoc[theObj]) && theDoc.all)
foundObj = theDoc.all[theObj];
for (i = 0; !foundObj && i < theDoc.forms.length; i++)
foundObj = theDoc.forms[i][theObj];
for (i = 0; !foundObj && theDoc.layers && i < theDoc.layers.length; i++)
foundObj = findObj(theObj, theDoc.layers[i].document);
if (!foundObj && document.getElementById)
foundObj = document.getElementById(theObj);
return foundObj;
}
对应的aspx:
<table cellpadding="0" cellspacing="0" border="0" align="center" class="tab_add" id="pcc">
<tr>
<th>省(直辖市)</th>
<th>市</th>
<th>县(区)</th>
<th>操作</th>
</tr>//设置第一行要显示的东西
<tr>
<td>
<select id="province" class="txtW95" onchange="addCity();">
<option value="">请选择省</option>
<%foreach (var item in base.DataProvider.CountyOrArea.Where(t => t.SuperiorEncoding == "").OrderBy(t => t.AreaCode))
{%>//服务端填充下拉框的项
<option value="<%=item.AreaId %>"><%=item.AreaName %></option>
<%} %>
</select>
</td>
<td>
<select id="city" class="txtW95" onchange="addCounty();">
</select></td>
<td>
<select id="county" class="txtW95">
</select></td>
<td style="width: 25%">
<button class="toolbtn" id="add0" onclick="pccAddSignRow();">
<img src="data:images/plus.png" />添加</button>
<button class="toolbtn" onclick="cpDeleteRow('cpItem0');">
<img src="data:images/del.png" />删除</button>
<input name='pccTRLastIndex' type='hidden' id='pccTRLastIndex' value="1" />//隐藏记录行号
</td>
</tr> </table>
JS控制的动态表格的更多相关文章
- JS中的动态表格
写法一:(有点啰嗦) //--------------XML DOM--------------------------------------function addTR(){ //1.取三个框的值 ...
- [JS前端开发] js/jquery控制页面动态加载数据 滑动滚动条自动加载事件
页面滚动动态加载数据,页面下拉自动加载内容 相信很多人都见过瀑布流图片布局,那些图片是动态加载出来的,效果很好,对服务器的压力相对来说也小了很多 有手机的相信都见过这样的效果:进入qq空间,向下拉动空 ...
- js/jquery控制页面动态加载数据 滑动滚动条自动加载事件--转他人的
js/jquery控制页面动态加载数据 滑动滚动条自动加载事件--转他人的 相信很多人都见过瀑布流图片布局,那些图片是动态加载出来的,效果很好,对服务器的压力相对来说也小了很多 有手机的相信都见过这样 ...
- [JS前端开发] js/jquery控制页面动态载入数据 滑动滚动栏自己主动载入事件
本人小菜鸟一仅仅.为了自我学习和交流PHP(jquery,linux,lamp,shell,javascript,server)等一系列的知识,小菜鸟创建了一个群.希望光临本博客的人能够进来交流.寻求 ...
- js如何实现动态的在表格中添加和删除行?(两种方法)
js如何实现动态的在表格中添加和删除行?(两种方法) 一.总结 1.table元素有属性和一些方法(js使用) 方法一:添加可通过在table的innerHTML属性中添加tr和td来实现 tab.i ...
- js如何实现动态克隆一个表格?
js如何实现动态克隆一个表格? 一.总结 1.通过innerHTML实现表格内容复制, 2.通过表格dom的属性(比如border)实现属性赋值, 3.通过表格dom的样式style实现样式的复制. ...
- js如何实现动态在表格中添加标题和去掉标题?
js如何实现动态在表格中添加标题和去掉标题? 一.总结 1.通过table标签的createCaption(),deleteCaption()方法实现. document.getElementById ...
- js的动态表格的增删改查思路
1. 首先我们要知道,动态添加,肯定不是 在页面上写死得,而是通过js调用循环放入到页面上的,我们在写动态表格的时候不要先着急写,我们第一步要做的就是构思,要把自己的逻辑先弄清楚,不然的话,前面是好写 ...
- JS 创建动态表格练习
创建动态表格 1.1 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> &l ...
随机推荐
- 为OpenEdx中lms注册模块扩展字段
最近遇到需求,需要扩展注册的字段,例如新增手机mobile字段 1.打开register.html文件 路径为\edxapp\edx-platform\lms\templates\register ...
- 非对称加密算法-RSA
注意:本节内容主要参考自<Java加密与解密的艺术(第2版)>第8章“高等加密算法--非对称加密算法” 12.1.RSA(最经典的非对称加密算法) 特点: 使用一套密钥即可完成加解密(与D ...
- mysql取前几行数据limit用法
转自http://www.cnblogs.com/study100/archive/2013/07/30/3224250.html 在mysql中是没有top关键字的,在mysql中可以用limit来 ...
- sass中中文注释报错
最近项目中用到了sass来编译css,但是scss代码中写了中文注释后编译报错, 经过查找文档和资料,终于找到了解决办法,即在scss文件顶部加上@charset "utf-8"; ...
- javascript选择排序
function selectionSort(arr){ var index,value; for(var i = 0;i < arr.length;i ++){ index = i; //先记 ...
- <java基础学习>JAVA 对象和类
Java is an Object-Oriented Language. As a language that has the Object Oriented feature, Java suppor ...
- Coding源码学习第二部分(FunctionIntroManager.m)
接上篇.上篇有一个细节忘了写,在Coding_iOS-Info.plist 里面添加了一个key 是 Status bar is initially hidden Value 是 YES,在appl ...
- Spring 通过配置文件注入 properties文件
当我们需要将某些值放入 properties文件 key=value 的方式,获取文件信息使用spring 注入的方式会变得很便捷 1. spring 配置文件需要导入 <?xml versio ...
- centos7 jexus在vmware下能访问,主机访问不了解决方案
能PING通,访问不了web,先在CMD测试telnet ip 80看看是否是防火墙的问题. 修改防火墙,打开指定端口 1 安装iptables [root@centos ~]# yum instal ...
- 第九篇.bootstrap导航
创建一个标签式的导航菜单的步骤是: 在ul标签上加上class nav 再ul标签上加上 class .nav-tabs. 在li标签上加上 active表示激活该项 <ul class=&q ...