确认对话框中的Jquery UI

时间:2012-11-16 14:09:30

标签: jquery-ui confirm

如何将jQueryUI对话框实现为确认对话框?

当前代码:

$("#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/

我该怎么做?

提前致谢。

1 个答案:

答案 0 :(得分: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
});​

另外,如果我用德语错误地命名,我会提前道歉。我只知道谷歌翻译告诉我的内容。 :)