2011-02-08 8 views

Odpowiedz

64

Poniższy (pozornie nieudokumentowane) działa na mnie z jQuery 1.8.9:

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

Przycisk może być skierowana przez $ ("# my-button-id ")

+1

To * jest * udokumentowane: "Każdy element tablicy musi być obiektem definiującym atrybuty *, właściwości i procedury obsługi zdarzenia, które mają zostać ustawione na przycisku." ID to standardowy atrybut. –

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

nadzieję, że pomaga

+1

myślę, że to będzie zagadką użyć. Proszę, bądźcie trochę opisowi. – TheVillageIdiot

+1

możesz wyjaśnić. Co to jest #OK – Hussein

+1

identyfikator przycisku ... – Rafay

2

Spróbuj tego.

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

A seter id

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

@BerndB: Dzięki temu działa idealnie, a nawet jest bardziej rozszerzalna.

$('#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

dzięki ... dużo. pomógł –

18

Ten kod z oficjalnej strony pracował dla mnie:

$('#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

Co masz na myśli mówiąc "kod z oficjalnej strony"? Oficjalna dokumentacja przycisków dialogowych nie mówi, że "id" jest poprawną właściwością: http://api.jqueryui.com/dialog/#option-buttons W rzeczywistości oznacza to coś przeciwnego, mówiąc "jeśli potrzebujesz dostępu do jest dostępny jako cel obiektu zdarzenia ". Jeśli "id" jest poprawną właściwością, oczywiście będzie można uzyskać dostęp do przycisku z nim. Nieudokumentowane "funkcje" mogą zostać niespodziewanie odrzucone, na przykład: http://bugs.jqueryui.com/ticket/4437 Ta odpowiedź niesłusznie sugeruje, że 'id' jest oficjalnie wspierany. –

+1

Nie określa wprost, że ID jest obsługiwany, ale zdecydowanie nie oznacza to czegoś przeciwnego. Mówi: "Każdy element tablicy musi być obiektem definiującym atrybuty *, właściwości i procedury obsługi zdarzenia, które mają zostać ustawione na przycisku." ID to standardowy atrybut. –

Powiązane problemy