2011-02-08 11 views

Respuesta

64

La siguiente (aparentemente no documentado) funciona para mí con jQuery 1.8.9:

$("#dlg").dialog({ 
    buttons : { 
    "MyButton" : { 
     text: "My Button", 
     id: "my-button-id", 
     click: function(){ 
      alert("here"); 
     } 
     } 
    } 
}); 

El botón se puede abordar mediante $ ("# my-button-id ")

+1

Esto * está * documentado: "Cada elemento de la matriz debe ser un objeto que define los * atributos *, propiedades y controladores de eventos para establecer en el botón". ID es un atributo estándar. –

0
$("#OK",{id:'xyz'}); 

esperanza de que ayuda

+1

creo que esto será enigma para usar. Por favor sé un poco descriptivo. – TheVillageIdiot

+1

puede aclarar. ¿Qué es #OK – Hussein

+1

la identificación del botón ... – Rafay

2

probar esto.

buttons: { 
    'MyButton': function() { 
     //... configure the button's function 
    } 

Y el colocador Identificación

$('button:contains(MyButton)').attr("id","xyz"); 
3

@BerndB: Gracias, funciona perfectamente e incluso es más extensible.

$('#loginlink').live('click',function(){ 
    DC = 'login_box'; 
    diaOpt = { 
     autoOpen : true, 
     width : 400, 
     title : 'Login', 
     buttons: { 
      //valiudate login 
      'Login' : { 
       text : 'Login Now', 
       id : 'validateForm', 
       click : function(){ 
       } 
      } 
     } 
    } 

    launchDialog(diaOpt, DC); 
}); 

$('#validateForm').live('click', function(){ 
    alert('Hellop'); 
    $("#loginform").validate(); 
}); 
+1

gracias ... mucho. ayudó –

18

Este código desde el sitio oficial trabajó para mí:

$('#dialog').dialog({ 
    // properties ... 
    buttons: [{ 
     id:"btn-accept", 
     text: "Accept", 
     click: function() { 
      $(this).dialog("close"); 
     } 
    }, 
    { 
     id:"btn-cancel", 
     text: "Cancel", 
     click: function() { 
      $(this).dialog("close"); 
     } 
    }] 
}); 
+0

¿A qué te refieres cuando dices "código del sitio oficial"? La documentación oficial para los botones de diálogo no dice que 'id' sea una propiedad válida: http://api.jqueryui.com/dialog/#option-buttons De hecho, implica lo contrario al decir" si necesita acceder al botón, está disponible como el objetivo del objeto de evento ". Si 'id' fuera una propiedad válida, obviamente también sería posible acceder al botón con ella. Las "características" no documentadas se pueden eliminar de forma inesperada, como en este caso: http://bugs.jqueryui.com/ticket/4437 Por lo que esta respuesta implica erróneamente que 'id' es oficialmente compatible. –

+1

No indica explícitamente que la ID sea compatible, pero definitivamente no implica lo contrario. Dice: "Cada elemento de la matriz debe ser un objeto que define los * atributos *, propiedades y controladores de eventos para establecer en el botón". ID es un atributo estándar. –

Cuestiones relacionadas