这个一个利用jquery实现动态插入输入行效果小功能,不用在javascript里拼写html字符串,更简洁、高效。

html代码:

<div class="fitem">
<table id="tblData">
<tr>
<td>保证人姓名</td>
<td>证件号码</td>
<td>工作单位</td>
<td>职务</td>
<td>联系电话</td>
<td>婚姻状况</td>
<td>家庭地址</td>
<td>月收入情况</td>
<td>资产总额</td>
<td>负债总额</td>
</tr>
<tr id="tRow0">
<td>
<input id="guaranterName" name="guaranterName" style="width:89px">
</td>
<td>
<input id="guaranterCard" name="guaranterCard" style="width:89px">
</td>
<td>
<input id="guaranterEmployer" name="guaranterEmployer" style="width:89px">
</td>
<td>
<input id="guaranterDuties" name="guaranterDuties" style="width:89px">
</td>
<td>
<input id="guaranterPhone" name="guaranterPhone" style="width:89px">
</td>
<td>
<select id="guaranterMaritalStatus" name="guaranterMaritalStatus" style="width:89px">
<option value=""></option>
<option value="已婚">已婚</option>
<option value="未婚">未婚</option>
<option value="离异">离异</option>
<option value="丧偶">丧偶</option>
<option value="其他">其他</option>
</select>
</td>
<td>
<input id="guaranterHouseAddress" name="guaranterHouseAddress" style="width:89px">
</td>
<td>
<input id="guaranterMonthlyIncome" name="guaranterMonthlyIncome" style="width:89px">
</td>
<td>
<input id="guaranterValues" name="guaranterValues" style="width:89px">
</td>
<td>
<input id="guaranterTotalLiabilities" name="guaranterTotalLiabilities" style="width:89px">
</td>
</tr>
</table>
<br />
<div style="text-align:center;">
<a href="#" onclick="addGuaranterRow()">添加一行</a>
</div>

</div>

javascript代码:

//添加行
function addGuaranterRow(){
var num=$("#guaranterRowCount").val();
num=parseInt(num);
num++;//点击自加
var str='<td><a href="#" onclick=delGuaranterRow('+num+')>删除</a></td>';
$("#tRow0").clone(true).attr("id","tRow"+num).appendTo("#tblData");
$("#tRow"+num+"td").each(function(){
$(this).find("input[type='text']").val("");//清空数据
$(this).find("input[name='guaranterName']").attr("id","guaranterName"+num).attr("name","guaranterName"+num);
$(this).find("input[name='guaranterCard']").attr("id","guaranterCard"+num).attr("name","guaranterCard"+num);
$(this).find("input[name='guaranterEmployer']").attr("id","guaranterEmployer"+num).attr("name","guaranterEmployer"+num);
$(this).find("input[name='guaranterDuties']").attr("id","guaranterDuties"+num).attr("name","guaranterDuties"+num);
$(this).find("input[name='guaranterPhone']").attr("id","guaranterPhone"+num).attr("name","guaranterPhone"+num);
$(this).find("input[name='guaranterMaritalStatus']").attr("id","guaranterMaritalStatus"+num).attr("name","guaranterMaritalStatus"+num);
$(this).find("input[name='guaranterHouseAddress']").attr("id","guaranterHouseAddress"+num).attr("name","guaranterHouseAddress"+num);
$(this).find("input[name='guaranterMonthlyIncome']").attr("id","guaranterMonthlyIncome"+num).attr("name","guaranterMonthlyIncome"+num);
$(this).find("input[name='guaranterValues']").attr("id","guaranterValues"+num).attr("name","guaranterValues"+num);
$(this).find("input[name='guaranterTotalLiabilities']").attr("id","guaranterTotalLiabilities"+num).attr("name","guaranterTotalLiabilities"+num);
});
$("#guaranterRowCount").val(num);//重新赋值
$("#tRow"+num).append(str);
}
//删除行
function delGuaranterRow(rowIndex){
var num=$("#guaranterRowCount").val();
num=parseInt(num);
if(rowIndex>0&&num>0){//判断是不是第一行
$("#tRow"+rowIndex).remove();
num--;//删除后要自减
$('#guaranterRowCount').val(num);
}else{
alert("这是第一行了!");
}
}

最新文章

  1. MPICH3 配置安装问题列表
  2. sed 详解
  3. J2EE初探
  4. bash脚本退出代码解释
  5. js所有函数集合
  6. python10--函数的来源,优点,定义,组成,使用(定义,调用)函数的分类,函数的返回值
  7. 2018-2019-2 网络对抗技术 20165237 Exp3 免杀原理与实践
  8. [Swift]LeetCode662. 二叉树最大宽度 | Maximum Width of Binary Tree
  9. PHP 5.0~5.6 各版本兼容性的 cURL 文件上传
  10. 关于webpack官网的学习
  11. 在MFC Dialog中显示cmd窗口
  12. Node.js 调存储过程
  13. Python 类的内置方法
  14. 如何使用 Deepfakes 换脸
  15. hdoj4871
  16. Codeforces Round #216 (Div. 2)
  17. 怎么从bam文件中提取出比对OR没比对上的paired reads | bamToFastq | STAR
  18. 学习笔记之GenFu
  19. Linq to Sql 动态条件另类实现方法
  20. POJ3977 Subset

热门文章

  1. 最佳化常用测试函数 Optimization Test functions
  2. JavaScript高级程序设计61.pdf
  3. JavaScript高级程序设计26.pdf
  4. Qualcomm Android display架构分析
  5. 运行.class文件提示找不到或者无法加载主类原因
  6. windows ntp安装及调试
  7. 4 weekend110的hdfs下载数据源码跟踪铺垫 + hdfs下载数据源码分析-getFileSystem(值得反复推敲和打断点源码)
  8. Spark RDD概念学习系列之rdd持久化、广播、累加器(十八)
  9. 2013腾讯编程马拉松初赛第二场(3月22日) 小Q系列故事——为什么时光不能倒流 ---好水!!
  10. [学习笔记]设计模式之Factory Method