2015-12-03 75 views
1

餘米創建使用Alertify庫我的JavaScript對話框,如何關閉alertify.dialog

alertify.myAlert || alertify.dialog('myAlert',function factory(){ 
       return { 
        main:function(content){ 
         this.setContent(content); 
        }, 
        setup:function(){ 
         return { 
          options:{ 
           modal:false, 
           basic:true, 
           maximizable:false, 
           resizable:false, 
           padding:false, 
           visible:false 
          } 
         }; 
         }, 
         hooks: { 
          onshow: function() { 
          this.elements.dialog.style.height = '50%'; 
          this.elements.dialog.style.width = '15%'; 
          } 
         } 
        }; 
      }); 

,並使用下面的代碼調用它..

alertify.myAlert("my html content"); 

一旦推出,我怎麼能關閉它? 我試圖DIFF組合像alertify.myAlert.close(),alertify.myAlert.hide(),但沒有奏效..

+0

使用無參數構造函數來獲取對話框引用,然後關閉()它alertify.myAlert()。close()' –

回答

1

試試這個: -

alertify.alert().destroy(); 
+0

謝謝你的工作。 – Alex

+0

它將刪除關聯的DOM並將所有設置重置爲其初始狀態:) – Nero

+0

destroy()&close()方法起作用。但是,使用這些方法關閉時,顯示HTML表單的對話框並未保留其以前輸入的表單值。只是想知道是否有任何方法只是隱藏對話框而不是銷燬,所以每次打開對話框時都不需要輸入所有的表單字段。 – Alex

1

@Nero,@MK:謝謝。 close()然後show()完成這項工作。他們保持對話狀態。

2個問題,

  1. 大家可以參考alertify.dialog()實現內外部HTML文件。目前我正在使用下面的代碼,它採用html代碼並構建對話框內容。

    alertify.myAlert('MY HTML Content'); 
    

    它看起來很髒,所有的html代碼都在這裏。我們有沒有選擇指定html文件的路徑?

  2. 如何將對話框的可見性設置爲false。我嘗試設置可見性:隱藏,顯示:假,隱藏:真實等在選項,但沒有工作。

+0

最好將這些問題轉移到單獨的帖子中,而不是將它們放在這個答案中! –