jquery 动态添加、按顺序添加input文本框并且实现删除操作
来源:互联网 发布:淘宝搜索引擎的原理 编辑:程序博客网 时间:2024/06/06 20:16
1.先来一张图来告诉我们今天要实现什么蓝色加号按钮点击就会动态添加一行“发明人N姓名”和“发明人N排名” 的input文本框还有图片”“ 点击蓝色按钮减号就会减少相对应的那一行还有索引也会减掉图片”“
2.首先 “发明人1姓名” 和 ”发明人1排名“是html要有的,然后点击加号按钮才会动态添加 贴出html 代码
- <table class="table-ys3" width="100%" id="table">
- <tr id="tableTR_1">
- <td class="bt2" width="4%">发明人1姓名</td>
- <td width="10%"><input type="text" id="InventorName_1" class="bd-ys1" value="" /></td>
- <td class="bt2" width="4%">发明人1排名</td>
- <td width="10%"><input type="text" id="InventorRanking_1" class="bd-ys1" value="" /></td>
- </tr><table>
- <div style="position: absolute; top: 118px; right: -25px;"><img src="${pageContext.request.contextPath}/img/jia.png" onclick="add()"/></div>
3.点击add方法
-
- function add(){
- var top1=118;
- var xhcs=forEachTDCS();
- if(xhcs!=""){
- var xhcss=xhcs.split(",");
- var dqzhzhygtr=xhcss[xhcss.length-1]*1+1;
- top1=top1+36*dqzhzhygtr-36;
-
- creatTR(dqzhzhygtr,top1)
- }
- }
-
- var forEachTDCS=function(){
- var xhcs="";
-
- $("#table").find("tr").each(function(){
- var tableTr=$(this).attr("id");
- if(tableTr!="undefined"&&tableTr!=null){
- if(tableTr.indexOf("tableTR_")>=0){
- if(xhcs==""){
- xhcs+=tableTr.split("_")[1];
- }else{
- xhcs+=","+tableTr.split("_")[1]
- }
- }
- }
- })
- return xhcs;
- }
-
- function creatTR(dqzhzhygtr,top1){
- var strTr="";
- var strImg="";
- strTr+="<tr id='tableTR_"+dqzhzhygtr+"'><td class='bt2'>发明人"+dqzhzhygtr+"姓名 </td>"
- strTr+="<td><input type='text' class='bd-ys1' id='InventorName_"+dqzhzhygtr+"' value='' /></td>";
- strTr+="<td class='bt2' >发明人"+dqzhzhygtr+"排名</td>";
- strTr+="<td><input type='text' id='InventorRanking_"+dqzhzhygtr+"' class='bd-ys1' value='' /></td></tr>";
- strImg="<div id='jianimg_"+dqzhzhygtr+"' style='position: absolute; top: "+top1+"px; right: -25px;'><img src='${pageContext.request.contextPath}/img/jian.png' onclick='jian("+dqzhzhygtr+","+top1+")'/></div>"
-
- var dqzhzhygtrs=dqzhzhygtr*1-1;
- $("#tableTR_"+dqzhzhygtrs).after(strTr)
- $("#tableTR_"+dqzhzhygtrs).after(strImg)
- }
以上这些操作一个动态的input文本框,添加完毕,还能按顺序排列哦3.动态添加也就能动态删除tr,下面来粘一段动态删除tr的input文本框的方法
-
- function jian(index,top1){
-
- var xhcs=forEachTDCS();
- var xhcss=xhcs.split(",");
- $("#jianimg_" + index).remove();
- $("#tableTR_" + index).remove();
- for(var i=0;i<xhcss.length;i++){
-
- if(xhcss[i]>index){
-
- var jtop=$("#jianimg_" + xhcss[i]).css('top');
-
- var jtopS = jtop.split("px")[0]*1-36*1;
-
- $("#jianimg_" + xhcss[i]).css({"top":jtopS});
- var imgId="jianimg_"+(xhcss[i]*1-1);
- var trId="tableTR_"+(xhcss[i]*1-1);
- var InventorNameid="InventorName_"+(xhcss[i]*1-1);
- var InventorRankingId="InventorRanking_"+(xhcss[i]*1-1);
-
- $("#jianimg_" + xhcss[i]).attr("id",imgId);
- $("#InventorName_"+ xhcss[i]).attr("id",InventorNameid);
- $("#InventorRanking_"+ xhcss[i]).attr("id",InventorRankingId);
- var str="<img style='abvn' src='${pageContext.request.contextPath}/img/jian.png' onclick='jian("+(xhcss[i]*1-1)+","+jtopS+")'/>";
- $("#"+imgId).html(str);
- $("#tableTR_" + xhcss[i]).attr("id",trId);
- $("#"+trId).find("td").eq(0).text("发明人"+(xhcss[i]*1-1)+"姓名");
- $("#"+trId).find("td").eq(2).text("发明人"+(xhcss[i]*1-1)+"排名");
- }
- }
这样inpu的索引都删除掉了以后字段、索引要重新赋值、开始新的排序。注意:索引一定不要排错否则就会产生点击添加按钮不添加一行,点击删除不删除等操作