JavaScript Dom操作-增删改节点2 - 实例

html

<body>

<div id="div1"class="div1 none" style="display: none"></div>
<div id="div2"  class="div2 none" style="display: none">
    <input type="text" name="bookName" id="bookName"  placeholder=" 书籍名称:"/>
    <input type="text" name="bookPrice" id="bookPrice"  value=" ¥ 99" />
    <input class="btn" type="button" value="增加书籍"/>
</div>

<table border="1" cellspacing="0" cellpadding="10" >
    <thead>

    <tr>
        <th>书籍</th>
        <th>价格</th>
        <th  colspan="2">操作 |  <input id="addBtnShow" class="btn" type="button" value="增加书籍"/> </th>
    </tr>
    </thead>
    <tbody id="bookCon">
    <tr>
        <td id="tr1">第八条猎狗</td>
        <td>¥22</td>
        <td  class="btn" >删除</td>
        <td  class="btn" >修改</td>
    </tr>
    <tr>
        <td>不抱怨的世界</td>
        <td>¥22</td>
        <td  class="btn" >删除</td>
        <td  class="btn" >修改</td>
    </tr>
    </tbody>
</table>

</body>

  

样式

  .div1{
        position: absolute;
        width: 100%;
        height: 100%;
        background: rgba(0,0,0,0.5);
    }
    .div2{
        position: absolute;
        left: 50%;
        top: 50%;
        margin-top: -75px;
        margin-left:-170px;
        width: 300px;
        height:110px;
        padding: 20px;
     }
    .div2 input{
        width: 100%;
        height: 30px;
        margin: 2px 0;}

  JavaScript

  //新增
    var addBtnShow = document.getElementById("addBtnShow");
    var oDiv1 = document.getElementById("div1");
    var oDiv2=  document.getElementById("div2");
    addBtnShow.onclick = function(){
        if(  oDiv1.style.display=="none"){
            oDiv1.style.display="block";
            oDiv2.style.display="block";
        }

        var arrInput  =oDiv2.getElementsByTagName("input");
        arrInput[arrInput.length-1].onclick =function(){
            var s1=  arrInput[0].value;
            var s2=  arrInput[1].value;
            oDiv1.style.display="none";
            oDiv2.style.display="none";
            add(s1,s2);
        };

    };

  //删除
    var bookCon =  document.getElementsByTagName("tbody")[0] ;
    document.getElementsByTagName("tbody")[0].onclick  = function(){
        var arrtr = bookCon.getElementsByTagName( "tr") ;
        var index = 0;
        for( index=0; index<arrtr.length ;index++) {
            var childrenTd = arrtr[index].children;
            //删除
            childrenTd[childrenTd.length - 2].onclick = function () {
                del(this.parentNode.parentNode, this.parentNode);
            };
        }

        //修改
        for( index=0; index<arrtr.length ;index++){
            var childrenTd = arrtr[index].children;
            childrenTd[ childrenTd.length -1].onclick =  function(){
                var objTr = this.parentNode;
                if(  oDiv1.style.display=="none"){
                    oDiv1.style.display="block";
                    oDiv2.style.display="block";
                }
                //修改
                var arrInput  =oDiv2.getElementsByTagName("input");
                arrInput[0].value =childrenTd[0].innerHTML ;
                arrInput[1].value =childrenTd[1].innerHTML ;
                arrInput[arrInput.length-1].value ="确定修改";
                arrInput[arrInput.length-1].onclick =function(){
                    var s1=  arrInput[0].value;
                    var s2=  arrInput[1].value;
                    oDiv1.style.display="none";
                    oDiv2.style.display="none";
                    set(objTr,s1,s2);
                };

            };
        }

    };

    //add    增加一条,放在倒数第二的位置即放在length-1的前面
    function add(s1,s2){
        var newTr =document.createElement("tr");
        newTr.innerHTML="  <td>"+s1+"</td>   <td>"+s2+"</td> " +‘<td  class="btn" >删除</td>  <td  class="btn" >修改</td>‘;
        bookCon.insertBefore( newTr,  bookCon.children[bookCon.children.length-1] )
    }

    //del 删除最后一个即删除tr下标为length-1
    function  del(p,obj){
        if( p && obj )
            p.removeChild(  obj  )
    }

    //修改
    function   set(objTr,s1,s2){
        var newTr =document.createElement("tr");
        newTr.innerHTML="  <td>"+s1+"</td>   <td>"+s2+"</td> " +‘<td  class="btn" >删除</td>  <td  class="btn" >修改</td>‘;
        bookCon.replaceChild( newTr,objTr )
    }

  

时间: 2024-10-24 05:43:30

JavaScript Dom操作-增删改节点2 - 实例的相关文章

JavaScript Dom操作-增删改节点1

一.Dom操作 文档对象模型DOM:一套定义.规范.准则 为了能够让程序JavaScript去操作页面中的元素节点而定义的一套标准 DOM会把文档看作是一棵树,页面中的每个元素就是树上的一个一个节点:同时DOM定义了很多方法.属性等来操作这棵树中的每一个元素(节点)——每个节点称为DOM节点. 1.  节点.children      ——      (没有兼容性问题:只包含元素节点)   获取第一级子元素 childNodes    获取第一级子元素   有兼容性问题(标准浏览器文本和元素视为

DOM操作增删改查

通过 JavaScript,您可以重构整个HTML文档.您可以添加.移除.改变或重排页面上的项目.要改变页面的某个东西,JavaScript就需要对HTML文档中所有元素进行访问的入口.这个入口,连同对HTML 元素进行添加.移动.改变或移除的方法和属性,都是通过文档对象模型来获得的(DOM). 整个文档是一个文档节点 每个 HTML 标签是一个元素节点 包含在 HTML 元素中的文本是文本节点 每一个 HTML 属性是一个属性节点 注释属于注释节点 原生方式 1.获取 getElementBy

javascript生成表格增删改查 JavaScript动态改变表格单元格内容 动态生成表格 JS获取表格任意单元格 javascript如何动态删除表格某一行

jsp页面表格布局Html代码 <body > <center> <input type="text" value="111" id="mytext"> <table border="1" width="60%" id="mytable"> <tr> <td id="td1">第一行第一列<

javascript DOM 操作

在javascript中,经常会需要操作DOM操作,在此记录一下学习到DOM操作的知识. 一.JavaScript DOM 操作 1.1.DOM概念 DOM :Document Object Model(文本对象模型). D : 文档(html或xml文档) O : 对象(文档对象) M : 模型 1.2.DOM结构 DOM将文档以家谱树的形式来表现. 下面是一个简单的html文档,我们可以看出该文档的DOM结构如下 1 <!DOCTYPE html> 2 <html> 3 <

javascript DOM操作HTML文档

文档对象模型(DOM)是W3C为解决浏览器混战时代不同浏览器环境之间的差别而制定的模型标准.W3C将文档对象模型定义为:是一个能让程序和脚本动态 访问和更新文档内容.结构和样式的语言平台.提供了标准的HTML和XML对象集,并有一个标准接口来访问并操作他们,即任何一个 html 元素可以使用 JavaScript DOM 动态访问和控制. 1. DOM概述 文档对象模型定义了JavaScript可以进行操作的浏览器,描述了文档对象的逻辑结构及各个功能组件的标准接口.主要包括以下内容: 核心Jav

javascript DOM 操作基础知识小结

经常用到javascript对dom,喜欢这方便的朋友也很多,要想更好的对dom进行操作,这些基础一定要知道的. DOM添加元素,使用节点属性 <!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.

javascript删除一个html元素节点代码实例

javascript删除一个html元素节点代码实例:本章节介绍一下如何利用原生javascript实现删除一个指定的html元素.代码实例如下: <!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title&

JavaScript DOM操作及扩展

什么是DOM??? DOM(Document Object Model  文档对象模型)是针对HTML和XML文档的一个API(应用程序编程接口). 注意,IE中的所有DOM对象都是以COM(组件对象模型)对象的形式实现的.IE中的DOM对象与原生JavaScript对象的行为或活动特点并不一致. COM对象是遵循COM规范编写.以Win32动态链接库(DLL)或可执行文件(EXE)形式发布的可执行二进制代码,能够满足对组件架构的所有需求.DOM定义了一个Node接口,这个接口在JavaScri

【框架】[Hibernate]利用Hibernate进行单表的增删改查-Web实例

转载请注明出处:http://blog.csdn.net/qq_26525215 本文源自[大学之旅_谙忆的博客] 前面两篇博客已经将Hibernate的基础知识讲解得差不多了,差不多到写实例的时候了. 本篇只用hibernate进行单表的增删改查. 应用Hibernate,对students表进行增删改查. service层和DAO层,我都是直接写实现类了(因为这里主要是演示一下Hibernate的使用),如果是开发项目,注意一定要写接口! 准备数据库: 首先准备一个students表: cr