保存数据Jquery后如何避免确认窗口?

时间:2014-04-02 14:06:11

标签: javascript jquery html css dialog

当我将卡添加到收件箱中时。然后可以双击卡片,弹出对话框。 在对话框中,我有两个按钮(保存)和(取消)。当我按下取消按钮时,会出现一个确认窗口弹出窗口。

我想按下“保存”按钮,然后按“取消”按钮后,不会弹出此确认窗口。但是如果我没有保存数据,并按下取消按钮,则会弹出确认窗口。我尝试用自己来修复布尔值和句子,但是没有成功。

我有Demo

 // Double click to open Modal Dialog Window
    $('#userAddedCard').dblclick(function (e) {
        $currentTarget = $(e.target);

        $('#modalDialog').dialog({
            modal: true,
            height: 600,
            width: 500,
            position: 'center',
            buttons: {
                Save: function () { //submit

                    save(true);

                },
                Cancel: function () { //cancel

                        cancel(true);

                }

            }
        });

    });

    function save() {

            var val = $("#customTextBox").val();
            $currentTarget.find(".ctb").val(val);
            $currentTarget.find(".date").val($("#datepicker").val());           

        }

    function cancel() {

            $('#dialog-confirm').dialog({
                resizable: false,
                height: 300,
                modal: true,
                draggable: false,
                buttons: {
                    YES: function () {
                        $(this).dialog("close");
                        $('#modalDialog').dialog("close");
                    },
                    Cancel: function () {
                        $(this).dialog("close");
                    }
                }
            });
        }

1 个答案:

答案 0 :(得分:1)

使用布尔值

// Double click to open Modal Dialog Window
$('#userAddedCard').dblclick(function (e) {
    $currentTarget = $(e.target);

    $('#modalDialog').dialog({
        modal: true,
        height: 600,
        width: 500,
        position: 'center',
        buttons: {
            Save: function () { //submit

                save(true);

            },
            Cancel: function () { //cancel

                    cancel(true);

            }

        }
    });

});
 var boolean = false;
function save() {

        var val = $("#customTextBox").val();
        $currentTarget.find(".ctb").val(val);
        $currentTarget.find(".date").val($("#datepicker").val());         
        boolean = true;  

    }

function cancel() {

    if(!boolean){
        $('#dialog-confirm').dialog({
            resizable: false,
            height: 300,
            modal: true,
            draggable: false,
            buttons: {
                YES: function () {
                    $(this).dialog("close");
                    $('#modalDialog').dialog("close");
                },
                Cancel: function () {
                    $(this).dialog("close");
                }
            }
        });

    }
    else{
        $('#dialog-confirm').hide();
    }
}

当你点击取消它时会显示弹出窗口,当你点击保存后点击保存按钮时它会隐藏。