2011-07-12 30 views
1

的下面的代碼中時,我在對話框裏面創建了一個按鈕,但是按鈕沒有居中對齊,怎麼把它作爲中心對齊?Dojo Button不是中心對齊的,當它在對話框

var alert_dialog= new dijit.Dialog({ 
     id: "mydialog, 
     title: "My Alert", 
     content: "Hai" 
     }, this.name); 

alert_dialog.set("class","claro"); 

//----------------------------------------------------------------- 
//---------------- Button Creation Start -------------------------- 
//----------------------------------------------------------------- 

var button = new dijit.form.Button({ 
     id: "Alert_Button_"+this.name, 
     label: "Close" 
}); 

button.set("class", "claro"); 


dojo.connect(button, "onClick", function(){ 
    alert_dialog.destroy(); 
}); 

alert_dialog.domNode.appendChild(button.domNode); 

//alert_dialog.containerNode.appendChild(button.domNode); 

//----------------------------------------------------------------- 
//---------------- Button Creation End -------------------------- 
//----------------------------------------------------------------- 


dijit.byId(alert_dialog.id).show(); 

alert_dialog._setStyleAttr('border : 1.5px solid #000000'); 
alert_dialog._setStyleAttr('background : #FFFFFF'); 

回答

2

我敢肯定有很多很多其他好的方法可以做到這一點,但它運行良好時,我進行了測試。

var node, button; 
node = dojo.create("div", {style: "margin: 0px auto 0px auto; text-align: center;"}, alert_dialog.domNode); 
button = new dijit.form.Button({ 
     label: "Close", 
     'class': "claro", 
     onClick: alert_dialog.destroy 
}).placeAt(node); 

也把你的階級和進入的onClick按鈕的聲明是一個少許清潔劑的目光,爲您節省一些打字。你也可以在對話框的樣式和類上做同樣的事情。

0

這是一個dojo AMD解決方案,希望能幫到討論。 這是一個顯示HTML內容和「關閉」居中按鈕的警報對話框的功能。

require([ 
    "dojo/dom-construct", 
    "dijit/Dialog", 
    "dijit/form/Button", 
], function(domConstruct, Dialog, Button){ 


function showAlertDialog(htmlmsg, title) { 
    if(!title) title = "Alert"; 

    var saddlg = new Dialog({title: title, style: "width: 300px;"}); 

    saddlg.set('content', htmlmsg); 

    var saddiv = domConstruct.create("div", { style: "text-align: center; background: white;" }, saddlg.domNode); 

    var sadbtn = new Button({ label: "Close", 
           onClick: function(){ 
           saddlg.hide(); 
           domConstruct.destroy(saddlg); 
           } 
         }); 

    sadbtn.placeAt(saddiv);   
    saddlg.show(); 
} 


});