2012-11-16 1 views
0

Как реализовать диалог jQueryUI в диалоговом окне подтверждения?JQuery UI в диалоговом окне подтверждения

Текущий код:

$("#formular_submit").button().click(function() { 
    var meinArray = []; //ein neues Array definieren für die <a href> links 
    var say = $("[value='1']:checked").length; 
    //Wenn kein Checkbox gesetzt ist, Fehler Meldung 
    if (say == 0) { 
     alert("Bitte waehlen Sie eine aus."); 
     return false; 
    } 
    //Wenn ein oder mehere gewählt...  
    if (say >= 1) { 
     $("[value='1']:checked").each(function() { 
      //Alle Links mit "Title" versehen sind, in link Variable 
      var link = $("a#links_jquery").attr('title'); 
      //Alle Werte, die im "link" gespeicher sind, hängt man an das Array an(mit push Method) 
      meinArray.push(link); 
     }); 
     //Ausgabe mit Return, mach das, ansonsten False 
     return confirm("Möchten Sie wirklich diese News löschen : " + meinArray); 
    } 
    return false; 
}); //formular_submitFunction END 
​ 

Это пример: http://jsfiddle.net/aldimeola1122/9MnGh/

Как я могу это сделать?

Заранее спасибо.

ответ

0

Чтобы реализовать диалог jQueryUI в качестве подтверждения, вам необходимо отменить событие click на кнопку отправки и внедрить обработчик на кнопку «Подтвердить», которая отправит форму.

Вот пример (с updated fiddle, чтобы увидеть его в действии):

$(document).ready(function() { 
    $("#formular_submit").button().click(function(e) { 
     var say = $("[value='1']:checked").length, 
      d = $('<div />'), 
      p = $('<p />'), 
      ul = $('<ul />'), 
      li = $('<li />'); 

     //Wenn kein Checkbox gesetzt ist, Fehler Meldung 
     if (say === 0) { 
      d.append(p.clone().text('Bitte waehlen Sie eine aus.')).dialog({ 
       "buttons": { 
        "schließen": function (e) { 
         $(this).dialog('close'); 
        } 
       } 
      }); 
     } 
     //Wenn ein oder mehere gewählt...  
     if (say > 0) { 
      $("[value='1']:checked").each(function() { 
       //Alle Links mit "Title" versehen sind, in link Variable 
       var self = $(this), 
        link = self.siblings('label').find('a.links_jquery').attr('title'); 
       ul.append(li.clone().text(link)); 
      }); 
      //Ausgabe mit Return, mach das, ansonsten False 
      d.append(p.clone().text('Möchten Sie wirklich diese News löschen:')).append(ul); 
      d.dialog({ 
       "buttons": { 
        "schließen": function (e) { 
         $(this).dialog('close'); 
        }, 
        "bestätigen": function (e) { 
         $(this).dialog('close'); 
         $('form#meinFormular').submit(); 
        } 
       } 
      }); 
     } 
     e.preventDefault() 
     return false; 
    }); //formular_submitFunction END 
});​ 

Кроме того, я заранее извиняюсь, если я назвал что-нибудь неверно на немецком языке. Я знаю только, что говорит мне Google Translate. :)

+0

спасибо pete, он отлично работает – aldimeola1122