首页 > 代码库 > jQuery_添加与删除元素

jQuery_添加与删除元素

一、jQuery添加元素(通过 jQuery,可以很容易地添加新元素/内容。

1、添加新的 HTML 内容,用于添加新内容的四个 jQuery 方法(都能解析HTML标签):

append() - 在被选元素的结尾插入内容

<script src="jquery-1.11.1.min.js"></script>
<script>
$(function(){
   $(function(){
        $("#btn1").click(function(){
            $("p").append(" <b>Appended text</b>.");
        });   
        
        $("#btn2").click(function(){
            $("ol").append("<li>Appended item</li>");//能够解析HTML
        });
    });
});
</script>
</head>
<body>
<p>This is a paragraph.</p>
<p>This is another paragraph.</p>
<ol>
    <li>List item 1</li>
    <li>List item 2</li>
    <li>List item 3</li>
</ol>
<button id="btn1">追加文本</button>
<button id="btn2">追加列表项</button>
</body>

 

prepend() - 在被选元素的开头插入内容

<script src="jquery-1.11.1.min.js"></script>
<script>
$(function(){
   $(function(){
        $("#btn1").click(function(){
            $("p").prepend(" <b>Appended text</b>.");
        });   
        
        $("#btn2").click(function(){
            $("ol").prepend("<li>Appended item</li>");//能够解析HTML
        });
    });
});
</script>
</head>
<body>
<p>This is a paragraph.</p>
<p>This is another paragraph.</p>
<ol>
    <li>List item 1</li>
    <li>List item 2</li>
    <li>List item 3</li>
</ol>
<button id="btn1">追加文本</button>
<button id="btn2">追加列表项</button>
</body>

 

after() - 在被选元素之后插入内容

before() - 在被选元素之前插入内容

<script src="jquery-1.11.1.min.js"></script>
<script>
$(function(){
  $("#btn1").click(function(){
    $("img").before("<b>Before</b>");
  });

  $("#btn2").click(function(){
    $("img").after("<i>After</i>");
  });
});
</script>
</head>
<body>
<img src="/i/eg_w3school.gif" alt="W3School Logo" />
<br><br>
<button id="btn1">在图片前面添加文本</button>
<button id="btn2">在图片后面添加文本</button>
</body>

 

 

2、通过 append() 和 prepend() 方法添加若干新元素

append() 和 prepend() 方法能够通过参数接收无限数量的新元素。可以通过 jQuery 来生成文本/HTML或者通过 JavaScript 代码和 DOM 元素。

创建若干个新元素。这些元素可以通过 text/HTML、jQuery 或者 JavaScript/DOM 来创建。然后我们通过 append() 方法把这些新元素追加到文本中(对 prepend() 同样有效):

<script src="jquery-1.11.1.min.js"></script>
<script>
function appendText(){
      var txt1="<p>Text1.</p>";              // 以 HTML 创建新元素
      var txt2=$("<p></p>").text("Text2.");  // 以 jQuery 创建新元素
      var txt3=document.createElement("p");
      txt3.innerHTML="Text3.";               // 通过 DOM 来创建文本
      $("body").append(txt1,txt2,txt3);        // 追加新元素
}
</script>
</head>
<body>
<p>This is a paragraph.</p>
<button onclick="appendText()">追加文本</button>
</body>

 

 

3、通过 after() 和 before() 方法添加若干新元素

after() 和 before() 方法能够通过参数接收无限数量的新元素。可以通过 text/HTML、jQuery 或者 JavaScript/DOM 来创建新元素。

我们创建若干新元素。这些元素可以通过 text/HTML、jQuery 或者 JavaScript/DOM 来创建。然后我们通过 after() 方法把这些新元素插到文本中(对 before() 同样有效):

<script src="jquery-1.11.1.min.js"></script>
<script>
function afterText(){
    var txt1="<b>I </b>";                    // 以 HTML 创建元素
    var txt2=$("<i></i>").text("love ");     // 通过 jQuery 创建元素
    var txt3=document.createElement("big");  // 通过 DOM 创建元素
    txt3.innerHTML="jQuery!";
    $("img").after(txt1,txt2,txt3);          // 在 img 之后插入新元素
}
</script>
</head>
<body>
<img src="/i/eg_w3school.gif" alt="W3School Logo" />
<br><br>
<button onclick="afterText()">在图片后面添加文本</button>
</body>

 

 

 

 

 

二、jQuery - 删除元素(通过 jQuery,可以很容易地删除已有的 HTML 元素。

如需删除元素和内容,一般可使用以下两个 jQuery 方法:remove() - 删除被选元素(及其子元素)、empty() - 从被选元素中删除子元素

1、remove() - 删除被选元素(及其子元素)

<script>
$(function(){
   $(function(){
        $("button").click(function(){
             $("#div1").remove();
        });   
    });
});
</script>
</head>
<body>
<div id="div1" style="height:100px;width:300px;border:1px solid black;background-color:yellow;">
    This is some text in the div.
    <p>This is a paragraph in the div.</p>
    <p>This is another paragraph in the div.</p>
</div><br>
<button>删除 div 元素</button>
</body>

jQuery remove() 方法也可接受一个参数,允许您对被删元素进行过滤。该参数可以是任何 jQuery 选择器的语法。下面的例子删除 class="italic" 的所有 <p> 元素:

<script src="jquery-1.11.1.min.js"></script>
<script>
$(function(){
  $("button").click(function(){
    $("p").remove(".italic");
  });
});
</script>
</head>
<body>
    <p>This is a paragraph in the div.</p>
    <p class="italic"><i>This is another paragraph in the div.</i></p>
    <p class="italic"><i>This is another paragraph in the div.</i></p>
    <button>删除 class="italic" 的所有 p 元素</button>
</body>

 

  

2、empty() - 从被选元素中删除子元素

<script src="jquery-1.11.1.min.js"></script>
<script>
$(function(){
  $("button").click(function(){
    $("#div1").empty();
  });
});
</script>
</head>
<body>
<div id="div1" style="height:100px;width:300px;border:1px solid black;background-color:yellow;">
    This is some text in the div.
    <p>This is a paragraph in the div.</p>
    <p>This is another paragraph in the div.</p>
</div><br>
<button>清空 div 里面的所有元素包括文本和HTML标签</button>
</body>