js实现按钮添加和删除tr

截图

前端代码

 <form name="form1" method="post" action="pMmEquipMent2!saveMmEqiup.action" id="form1">
    <s:hidden key="vo.id"/>
    <s:hidden key="vo.dock"></s:hidden>
     <s:hidden key="act"/>
    <div>
        <table cellpadding="0" border="0" cellspacing="0" class="edittable" id="table1">
            <tbody id="tbody">

            </tbody>
        </table>
        <br />
        <input type="button" value="增加" onclick="f_addTr()"></input>
    </div>
    </form>
//添加tr
         function f_addTr(){
             var allTr = $("#table1 tbody tr");
             if(allTr && allTr.length != 0 && allTr != null && allTr != ""){
                 var addEquip = $("tr:last:").children(‘td‘).eq(1).find("input[name=equipmentIds]");
                 var equipmentId = $(addEquip).val();
                     if(!equipmentId || equipmentId <= 0 || equipmentId == null || equipmentId==""){
                         alert("设备有空值请先选择");
                         return;
                  }
             }
                var html = ‘<tr>‘
                /* +‘<td style="padding-top: 10px;">设备类型:</td>‘
                +‘<td><select style="width:120px" name="selectNames" class="selectName" onchange="addEquip(this)"></select>&nbsp;&nbsp;</td>‘ */
                +‘<td style="padding-top: 10px;">设备:</td>‘
                +‘<td ><input type="text" name="equipNames" style="width:260px" class="equipAlias"><input type="hidden" name="equipmentIds">&nbsp;&nbsp;</td>‘
                +‘<td>位号:</td>‘
                +‘<td><input type="text" name="tags" style="width:150px" calss="tags"><input type="hidden" name="tagIds"></td>‘
                +‘<td>&nbsp;&nbsp;<input type="button" value="删除" onclick="deleteTr(this)"></td>‘
                +‘</tr>‘
              $("#tbody").append(html);
              //f_addSelect();
              f_addEquip();
          } 
//设备autocomplete自动完成
          function f_addEquip(){
              //debugger;
              //var tr =
              //最后一个tr的设备js参数
              var equipAlias = $("tr:last:").children(‘td‘).eq(1).find("input[name=equipNames]");
             //var tr = $(obj).parent().parent();
              //var equipAlias = tr.children("td").eq(1).find("input[name=equipNames]");
              //最后一个tr的位号js参数
             var tags = $("tr:last:").children("td").eq(3).find("input[name=tags]");
             var tagIds = $("tr:last:").children("td").eq(3).find("input[name=tagIds]");
             var equipmentIds = $("tr:last:").children("td").eq(1).find("input[name=equipmentIds]");
            // $(".equipAlias").flushCache();
             $(equipAlias).val("");
             $(equipmentIds).val("");
             $(tags).val("");
             $(tagIds).val("");
             $(equipAlias).flushCache();
             $(tags).flushCache();
             $(equipAlias).autocomplete("${ctx}/mm/pMmEquipMent2!findEquipAlias.action",{
                    max: 30,                //列表里的条目数
                    minChars: 0,            //自动完成激活之前填入的最小字符
                    width: 260,             //提示的宽度,溢出隐藏
                    scrollHeight: 300,      //提示的高度,溢出显示滚动条
                    matchContains: true,    //包含匹配,就是data参数里的数据,是否只要包含文本框里的数据就显示
                    autoFill: false,        //自动填充
                    mustMatch:true,         //true:只会允许匹配的结果出现在输入框,默认为false
                    dataType: "json",
                    multiple: false,     //是否多个值(“,”隔开)
                    matchSubset:true,
                    extraParams: {
                        //equipTypeId: function(){return $(obj).val();},
                        equipAlias: function(){ return encodeURIComponent($(equipAlias).val()); }
                    },
                    parse: function(data) {
                        var datas = new Array();
                        if(data !=null && data.length > 0){
                            $.each(data, function(i,item) {
                                var _data = {
                                        data:item,
                                        value:item.name,
                                        result:item.name
                                }
                                datas.push(_data);
                            })
                        }
                        return datas;
                    },
                    formatItem: function(row, i, max) {
                        return row.name;
                    },
                    formatResult: function(row) {
                        return row.name;
                    }

                 }).result(function(e, item, value) {
                     //var equipmentIds = tr.children("td").eq(3).find("input[name=equipmentIds]");
                     $(equipmentIds).val(item.id);
                     f_selectTags(tags, tagIds, item.id);
                });
        }
//删除对应tr
          function deleteTr(obj){
             $(obj).parent().parent().parent()[0].removeChild($(obj).parent().parent()[0]);
          }

  

原文地址:https://www.cnblogs.com/hnzkljq/p/12117909.html

时间: 2024-10-12 11:42:18

js实现按钮添加和删除tr的相关文章

【HTML5】页面点击按钮添加一行 删除一行 全选 反选 全不选

页面点击按钮添加一行    删除一行   全选   反选  全不选 页面效果图如下 html页面代码 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <link rel="stylesheet" href="bootstrap-3.3.7-dist/css/bootstrap.css" /> <script type=&qu

点击按钮添加或者删除一行实例代码

点击按钮添加或者删除一行实例代码:网站在填写表达的时候又很多的选择空间,甚至可以自行添加需要添加的内容,例如可以点击按钮添加一个表达项,如果不需要的话可以点击一个按钮删除,下面就简单介绍一下如何实现此效果.代码实例如下: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www

原生js事件的添加和删除

在IE浏览器中添加或删除事件用attachEvent.detachEvent.在其他标准浏览器中则用addEventListener.removeEventListener.下面的对事件的添加和删除做了封装.直接看代码吧! /** * @description 事件绑定,兼容各浏览器 * @param target * 事件触发对象 * @param type * 事件 * @param func * 事件处理函数 */ function bind(target, type, func) { i

react.js 之 批量添加与删除功能

最近做的CMS需要用到批量添加图片的功能:在添加文件的容器盒子内,有两个内容,分别是:添加按钮与被添加的选择文件组件. 结构分析: 被添加的组件,我们称为:UploadQiNiuFiles(七牛文件上传组件),含一个删除当前组件的删除按钮 添加按钮的事件 被添加组件存放的容器 代码分析: 添加组件存放的容器:<div className="divBorder"> <div className="divBorder"> {addToBtn} /

点击按钮添加和删除块

点击按钮添加块 <form action="" id="repairmain" method="post"> <!-- 页面内容--> <div id="form"> <div class="repair_table" id="table"> <div><label class="name" name=

js数组的添加和删除

js中数组元素常用添加方法是直接添加.push方法以及unshift方法 删除方法则是delete.pop.shift 集修改方法为一身的则是splice 1.添加: (1)直接添加通常都是这样 var arr=[]; arr[0]="first"; arr[1]="second"; (2)push push方法向数组的末尾添加一个或多个元素,并返回新的长度 var arr=["first","second"]; //arr.

js数值的添加与删除

js中数组元素常用添加方法是直接添加.push方法以及unshift方法 删除方法则是delete.pop.shift 集修改方法为一身的则是splice 1.添加: (1)直接添加通常都是这样 var arr=[]; arr[0]="first"; arr[1]="second"; (2)push push方法就是将要添加的元素添加到数组的末尾,数组长度+1 var arr=["first","second"]; //arr

js操作表格-添加与删除

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-

js 为对象添加和删除属性

对于一个普通的js对象: var obj = { name:"mary", age:21 } 如果我们要对它添加新属性的话可以使用下列方式: obj.address = "北京" //{name: "mary", age: "21", address: "beijing"} 删除属性,需要使用delete方法: delete obj.name //{age: "21", address: