Creé una función jQuery para hacer esta tarea un poco más fácil. Probablemente ahora hay una mejor solución ... de cualquier manera, aquí están mis 2 centavos. :)
Simplemente agregue esto a su archivo JS:
$.fn.dialogButtons = function(name, state){
var buttons = $(this).next('div').find('button');
if(!name)return buttons;
return buttons.each(function(){
var text = $(this).text();
if(text==name && state=='disabled') {$(this).attr('disabled',true).addClass('ui-state-disabled');return this;}
if(text==name && state=='enabled') {$(this).attr('disabled',false).removeClass('ui-state-disabled');return this;}
if(text==name){return this;}
if(name=='disabled'){$(this).attr('disabled',true).addClass('ui-state-disabled');return buttons;}
if(name=='enabled'){$(this).attr('disabled',false).removeClass('ui-state-disabled');return buttons;}
});};
Deshabilitar el botón 'Aceptar' en el diálogo con la clase 'diálogo'
$('.dialog').dialogButtons('Ok', 'disabled');
Habilitar todos los botones:
$('.dialog').dialogButtons('enabled');
Habilite el botón 'Cerrar' y cambie el color:
$('.dialog').dialogButtons('Close', 'enabled').css('color','red');
Texto en todos los botones rojos:
$('.dialog').dialogButtons().css('color','red');
Espero que esto ayude :)