2010-01-21 68 views
0

我正在尋找一種方式來關閉scripty2對話是這樣的: http://mir.aculo.us/stuff/scripty2-ui/test/functional/controls_dialog.htmlScripty2:如何關閉對話框

從對話外(與螢火命令行即),但我的JavaScript的魔力是有點有限,在繞過DOM 30分鐘後,我找不到方法。任何提示?

注意:scripty2是script.aculo.us的重寫,它使用了一些JQuery UI。

+0

這應該與 'scripty2' 被標記爲 – barry 2010-01-22 15:24:17

回答

0

Scripty2 UI位是真正基於原型類,而不是擴展DOM元素,所以你不能使用$$()來獲取現有對話並關閉它就像你的想象。它必須存儲在一個JavaScript變量中。

var dialog = new S2.UI.Dialog({ // The class must be saved in a 
variable 
    content: "Consulting the server. Please wait." 
}); 

dialog.open(); // We open 
new Ajax.Request('/answers', { 
    onComplete: function(){ 
    alert("Done!"); 
    dialog.close(); // And close. 
    } 
}); 

嘗試粘貼到這些螢火蟲:

var dialog = new S2.UI.Dialog({content: "Hello World"}); 
dialog.open(); 
dialog.close(); 
0

要關閉所有的對話框(帶班div.ui-對話框元素),頁面上沒有IDS的代碼會是這樣的(未經測試):

$$('div.ui-dialog').each(function() {this.close();}); 
+0

謝謝你的答案。它不起作用。 – nicolasochem 2010-01-22 08:00:20