2012-12-29 119 views
0

我需要爲用戶提供兩種選擇。Dojo中的按鈕設置/按鈕欄

我想要這些很棒的大按鈕點擊,而不是RadioButton,其中標籤通常不是一個可點擊的元素,但只是一個傳統的小圓點擊。

例如

enter image description here

當用戶點擊每一個,一個函數被調用,不同的變量,讓一些其他的魔法可以在我的應用程序在其他地方發生。

我看到了how this can be done in jQuery,所以這將成爲我的備份計劃。

看到我正在嘗試學習Dojo並且90%的應用程序目前建立在Dojo(1.7)上,我希望Dojo中會有類似的組件。

我假設我可以將兩個單獨的Dojo buttons放在一起,並且有一個全局變量catch,其中一個當前最後一次點擊,當它有時,確保另一個按鈕被禁用,但這聽起來並不優雅。

實現選擇兩個按鈕的最佳方式是什麼?當單擊一個按鈕時,另一個按鈕被禁用,並且函數被觸發並使用特定值?

回答

1

,你可以使用類似這樣(請注意,我還沒有運行的代碼)

<button data-dojo-type="dijit/form/ToggleButton" id='toggle1' data-dojo-props="iconClass:'dijitCheckBoxIcon', checked: true"> 
<button data-dojo-type="dijit/form/ToggleButton" id='toggle2' data-dojo-props="iconClass:'dijitCheckBoxIcon', checked: false">​ 

與此javascript:

​dojo.require('dojo.parser'); 
dojo.require('dojo.form.ToggleButton'); 

dojo.ready(function(){ 
    dojo.parser.parse(); 
    dojo.connect(dijit.byId('toggle1'),'onChange',function(){ 
     dijit.byId('toggle2').set('checked',false); 
     //what you want to do 
    }); 
    dojo.connect(dijit.byId('toggle1'),'onChange',function(){ 
     dijit.byId('toggle2').set('checked',false); 
     //what you want to do 
    }); 

});

注意,我還沒有檢查了代碼,因此它可能需要一些修改