2010-02-17 17 views
5

Sto provando ad usare la finestra di dialogo jQueryUI per ottenere la conferma dell'utente prima di un aggiornamento del database, ma mi sto battendo per vedere come posso dire quale sia la scelta dell'utente nella finestra di dialogo, come tutti gli esempi che posso trovare, entrambi i pulsanti basta chiudere la finestra di dialogo, senza persistenza del pulsante scelto. Per esempio. dal campione e documentazione jQueryUI:Come si usa una finestra di dialogo jQueryUI per conferma?

  buttons: { 
       'Deactivate the campaign': function() { 
        $(this).dialog('close'); 
       }, 
       Cancel: function() { 
        $(this).dialog("close"); 
       } 
      } 

risposta

3

tuo chiamare la stessa funzione ($ (this) .dialog ('vicino');) per entrambi i pulsanti. Devi fare qualcosa di più che chiudere la finestra di dialogo. È possibile aggiornare uno span nascosto per passare quale pulsante è stato cliccato o semplicemente richiamare l'aggiornamento del DB da lì.

buttons: { 
     'Deactivate the campaign': function() { 
      //pass the value using a hidden span 
      $('#myHiddenControl').val('True'); 

      //or just call the db update 
      $.ajax({/* db call code ommited*/}); 

      $(this).dialog('close'); 
     }, 
     Cancel: function() { 
      //pass the value using a hidden span 
      $('#myHiddenControl').val('False'); 
      $(this).dialog("close"); 
     } 
} 
+0

Oppure è possibile utilizzare AJAX per inviare le informazioni al server. – Ikke

+1

Quindi $ .ajax() ... – ctrlShiftBryan

+0

Grazie a @ctrlShiftBryan. Immagino di aver usato lo stesso codice per entrambi i pulsanti, ma anche i campioni ufficiali lo fanno. Suppongo che lo stato della documentazione open source sia in gioco qui. – ProfK

Problemi correlati