javascript创建动态表单的方法


Posted in Javascript onJuly 25, 2015

本文实例讲述了javascript创建动态表单的方法。分享给大家供大家参考。具体实现方法如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Language" content="zh-CN" />
<meta name="Keywords" content="" />
<meta name="Description" content="" />
<title></title>
<style>
#tab {
border:1px solid #aaa;
border-collapse:collapse;
width:80%;
}
#tab th{
border:1px solid #aaaaaa;
background:#ECE9D8;
border-collapse:collapse;
padding:5px;
text-align:left;
}
#tab td{
border:1px solid #d8d8d8;
border-collapse:collapse;
padding:5px;
}
.txt{
  border:1px solid #888;
background:#ECE9D8;
}
.checkBg{
border:1px solid #aaaaaa;
background:#ECE9D8;
}
.checkTxt{
border:1px solid #aaa;
background:##d8d8d8;
}
.button {
  border:1px solid #888;margin:5px 0px;
  width:80px;background:#ECE9D8;height:22px;line-height:22px;
}
</style>
  <script language="javascript" type="text/javascript">
  function $(id) {return document.getElementById(id);}
  function $F(name){return document.getElementsByTagName(name);}
function add(){
  var otr = document.getElementById("tab").insertRow(-1);
  var checkTd=document.createElement("td");
  checkTd.innerHTML = '<input type="checkbox" class="check" onclick="ccolor()" name="checkItem">';
  var otd1 = document.createElement("td");
  otd1.innerHTML = '<input type="text" class="txt" name="infoName_txt" id="infoName_txt'+($('tab').rows.length-1)+'" maxlength="30" value=""/>';
  var otd2 = document.createElement("td");
  otd2.innerHTML = '<input type="text" class="txt" name="infoValue_txt" id="infoValue_txt'+($('tab').rows.length-1)+'" maxlength="30" value=""/>';
  otr.appendChild(checkTd);
  otr.appendChild(otd1); 
  otr.appendChild(otd2); 
}
function ccolor()
{
  var c1 = document.getElementsByName('checkItem');
  for(var i=0; i<c1.length; i++)
  if(c1[i].checked)
  {
   c1[i].parentNode.parentNode.className="checkBg";
   c1[i].parentNode.nextSibling.firstChild.className="checkTxt";
   c1[i].parentNode.nextSibling.nextSibling.firstChild.className="checkTxt";
  }
  else { c1[i].parentNode.parentNode.className="";
  c1[i].parentNode.nextSibling.firstChild.className="";
   c1[i].parentNode.nextSibling.nextSibling.firstChild.className="";}
}
function del(){
  var c = document.getElementsByName('checkItem');
  var idArray = new Array();
  for(var i=0; i<c.length; i++)
  if(c[i].checked)
  idArray.push(i);
  var rowIndex;
  var nextDiff =0;
  for(j=0;j< idArray.length;j++)
  {
  rowIndex = idArray[j]+1-nextDiff++;
  document.getElementById("tab").deleteRow(rowIndex);
  }
  }
function save(){
  var postString = $("postString");
   var checkboxs = document.getElementsByName("checkItem");
   var ttab = document.getElementsByName("infoName_txt");
   var tt2 = document.getElementsByName("infoValue_txt");
   var idArray = new Array();
   for(i=0;i<checkboxs.length;i++)
  {
   idArray.push(ttab[i].value + "|" + tt2[i].value); 
  }
   postString.value = idArray.join("-");
   alert(postString.value);
}
  function alldell()
  {
  var des =document.getElementsByName('checkItem');
  for(var i=0;i<des.length;i++)
  {
  if(des[i].checked=document.getElementById('delall').checked){
  des[i].parentNode.parentNode.className="checkBg";
  des[i].parentNode.nextSibling.firstChild.className="checkTxt";
  des[i].parentNode.nextSibling.nextSibling.firstChild.className="checkTxt";}
  else{ des[i].parentNode.parentNode.className="";
   des[i].parentNode.nextSibling.firstChild.className="";
   des[i].parentNode.nextSibling.nextSibling.firstChild.className="";}
  }
  } 
</script>
</head>
<body>
<input name="addv_btn" id="addv_btn" type="button" class="button" onClick="add();" value="add" /> 
<input name="del_btn" id="del_btn" type="button" class="button" onClick="del();" value="del" /> 
<input name="save" id="save" type="button" class="button" onClick="save();" value="save" /><br>
<table id="tab" >
<tr>
<th width="5%"><input type="checkbox" id="delall" onclick="alldell()"></td>
<th width="40%">Name</td>
<th width="55%">value</td> 
</tr>
</table>
<p>
<input type="text" name="postString" id="postString"> 
</p>
</body>
</html>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
js/jquery判断浏览器的方法小结
Sep 02 Javascript
详解JavaScript中的异常处理方法
Jun 16 Javascript
jquery实现鼠标经过显示下划线的渐变下拉菜单效果代码
Aug 24 Javascript
jquery自定义表格样式
Nov 23 Javascript
原生JS实现拖拽图片效果
Aug 27 Javascript
教你如何在Node.js中使用jQuery
Aug 28 Javascript
javascript常用的设计模式
Feb 09 Javascript
JavaScript面试技巧之数组的一些不low操作
Mar 22 Javascript
vue-cli3添加模式配置多环境变量的方法
Jun 05 Javascript
VUE 组件转换为微信小程序组件的方法
Nov 06 Javascript
JavaScript中的惰性载入函数及优势
Feb 18 Javascript
node.js如何根据URL返回指定的图片详解
Oct 21 Javascript
javascript文件加载管理简单实现方法
Jul 25 #Javascript
javascript页面倒计时实例
Jul 25 #Javascript
javascript解析xml实现省市县三级联动的方法
Jul 25 #Javascript
基于javascript实现单选及多选的向右和向左移动实例
Jul 25 #Javascript
javascript实现信息增删改查的方法
Jul 25 #Javascript
jQuery菜单插件用法实例
Jul 25 #Javascript
javascript单例模式的简单实现方法
Jul 25 #Javascript
You might like
风味层面去分析咖啡油脂
2021/03/03 咖啡文化
一个PHP缓存类代码(附详细说明)
2011/06/09 PHP
php堆排序(heapsort)练习
2013/11/13 PHP
php对文件夹进行相关操作(遍历、计算大小)
2015/11/04 PHP
php数据访问之查询关键字
2016/05/09 PHP
PHP实现超简单的SSL加密解密、验证及签名的方法示例
2017/08/28 PHP
php+ajax 文件上传代码实例
2019/03/18 PHP
理解Javascript_09_Function与Object
2010/10/16 Javascript
jquery复选框全选/取消示例
2013/12/30 Javascript
JavaScript中Function详解
2015/02/27 Javascript
javascript实现实时输出当前的时间
2015/04/27 Javascript
javascript每日必学之封装
2016/02/23 Javascript
AngularJS 指令详细介绍
2016/07/27 Javascript
Vue.js快速入门教程
2016/09/07 Javascript
一篇文章搞定JavaScript类型转换(面试常见)
2017/01/21 Javascript
nodejs个人博客开发第六步 数据分页
2017/04/12 NodeJs
js CSS3实现卡牌旋转切换效果
2017/07/04 Javascript
修改node.js默认的npm安装目录实例
2018/05/15 Javascript
Vue如何实现响应式系统
2018/07/11 Javascript
详解vue axios用post提交的数据格式
2018/08/07 Javascript
如何在 JavaScript 中更好地利用数组
2018/09/27 Javascript
IE8中jQuery.load()加载页面不显示的原因
2018/11/15 jQuery
微信小程序 setData 对 data数据影响问题
2019/04/18 Javascript
详解微信小程序缓存--缓存时效性
2019/05/02 Javascript
Element-UI中关于table表格的那些骚操作(小结)
2019/08/15 Javascript
微信小程序防止多次点击跳转(函数节流)
2019/09/19 Javascript
JavaScript遍历数组的方法代码实例
2020/01/14 Javascript
Python自定义scrapy中间模块避免重复采集的方法
2015/04/07 Python
python的pstuil模块使用方法总结
2019/07/26 Python
Django+zTree构建组织架构树的方法
2019/08/21 Python
RentCars.com巴西:汽车租赁网站
2016/08/22 全球购物
初中生物教学反思
2014/01/10 职场文书
校园十大歌手策划书
2014/02/01 职场文书
社区活动总结报告
2014/05/05 职场文书
会议简报格式范文
2015/07/20 职场文书
Python实现简单得递归下降Parser
2022/05/02 Python