JavaScript ·刪除 confirm彈出確認框

螞蟻小編發表於2017-03-25

通常在進行刪除操作的時候,會彈出一個確認框,以防止出現誤操作。

下面通過一個程式碼例項介紹一下JavaScript自帶confirm確認框的使用。

程式碼例項如下:

[HTML] 純文字檢視 複製程式碼執行程式碼
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="author" content="http://www.softwhy.com/" />
<title>螞蟻部落</title>
<style type="text/css">
#box li{
  width:300px;
  height:25px;
  font-size:12px;
  list-style:none;
}
</style>
<script type="text/javascript"> 
window.onload=function(){
  var obox=document.getElementById("box");
  var obt=document.getElementById("bt");
  var cks=obox.getElementsByTagName("input");
  obt.onclick=function(){
    if(confirm("確定要刪除?")){
      for(var index=0;index<cks.length;index++){
        if(cks[index].checked==true){
          obox.removeChild(cks[index].parentNode);
          index=0
        }
      }
    }
  }
}
</script> 
</head>
<body>
  <ul id="box">
    <li><input type="checkbox"/>螞蟻部落歡迎您,只有努力奮鬥才會有美好的未來。</li>
    <li><input type="checkbox"/>沒有人一開始就是高手,必須要通過努力。</li>
    <li><input type="checkbox"/>分享的精神和互助的胸懷是進步最大的源動力。</li>
    <li><input type="checkbox"/>每一天都是新的,請好好珍惜當前的事件。</li>
  </ul>
  <input type="button" id="bt" value="刪除所選"/>
</body>
</html>

上面的程式碼實現了刪除刪除前的提示作用,下面對上面程式碼的實現做一下簡單介紹。

一.程式碼註釋:

(1).window.onload=function(){},當文件內容完全載入完畢再去執行函式中的程式碼,否則可能會出現無法獲取物件的現象。

(2).var obox=document.getElementById("box"),獲取id屬性值為box的元素物件。

(3).var obt=document.getElementById("bt"),獲取id屬性值為bt的元素物件。

(4).var cks=obox.getElementsByTagName("input"),獲取obox下的input標籤元素物件集合。

(5).obt.onclick=function(){},為按鈕註冊onclick點選事件處理函式。

(6).if(confirm("確定要刪除?")){},confirm()函式的返回值是true或者false,點選確定就是返回true,點選取消就是返回false,所以點選確定的時候,就可以執行if語句後面的程式碼。

(7).for(var index=0;index<cks.length;index++){},通過for迴圈遍歷核取方塊集合。

(8).if(cks[index].checked==true){

  obox.removeChild(cks[index].parentNode);

  index=0

}

判斷當前的核取方塊是否選中,如果選中就將核取方塊的父元素也就是li元素刪除。最後面的index=0非常的重要,因為cks集合的元素是動態變化的,刪除一條元素那麼集合的長度就會減一,如果不將index重置為0,依然按照常規的for迴圈進行,有可能會導致錯誤的發生,所以刪除一個元素,就將index重置為0,相當於重新開始一次for迴圈,這樣就不會出錯了。

二.相關閱讀:

(1).getElementsByTagName()參閱getElementsByClassName()一章節。 

(2).removeChild()參閱JavaScript removeChild()一章節。

(3).parentNode可以參閱JavaScript parentNode一章節。

(4).confirm()參閱JavaScript confirm()一章節。

相關文章