当前位置: 代码迷 >> Web前端 >> 运用dojo的dialog自定义confirm效果
  详细解决方案

运用dojo的dialog自定义confirm效果

热度:144   发布时间:2012-07-27 11:03:00.0
使用dojo的dialog自定义confirm效果

/**
 * 使用dojo dialog模拟confirm<br>
 * 返回true/false<br>
 * 前提是已经引用了相应的dojo.js<br>
 * @author: DFH<br>
 * @since: 2012-05-16
 */
function dojoConfirm(content,callback){
	require([ "dijit/Dialog","dijit/form/Button"], function(Dialog) {
		content=content+
			"<br/><button dojoType='dijit.form.Button' id='yesButton'>确定</button>" +
			"<button dojoType='dijit.form.Button' id='noButton'>取消</button>";
		
		var confirmDialog = new Dialog({
			id:"confirmDialog",
			title : '确认',
			content : content,
			onHide : function() {
				this.destroyRecursive();
			}
		});
		confirmDialog.startup();
		
		var yesButton = dijit.byId('yesButton');
        var noButton = dijit.byId('noButton');
        //如果点击确定按钮
        dojo.connect(yesButton, 'onClick', function(mouseEvent) {
        confirmDialog.hide();
        callback();
        });
        //如果点击取消按钮
        dojo.connect(noButton, 'onClick', function(mouseEvent) {
        confirmDialog.hide();});
        
        confirmDialog.show();
	});
}

?

使用时要注意,代码中定义的三个id值在项目中不要重复。

调用方式

dojoConfirm("确认要删除?",function(){
			//删除功能...
});
?与普通confirm不同的是,直接传函数给方法让其在确认后调用,而不是使用if判断
  相关解决方案