jquery модальный диалог перед отправкой формы - PullRequest
0 голосов
/ 08 февраля 2012

У меня есть форма на странице, и я фиксирую действие нажатия на две кнопки отправки.Есть еще одна кнопка отправки, которая не перехватывается (т. Е. Мне не нужно показывать модальное значение для этой кнопки).

Итак, моя очевидная проблема заключается в том, что мне нужно заблокировать действие отправки при первом открытии модального окна, иЗатем мне нужно принудительно отправить, когда пользователь фактически нажимает кнопку ОК в модальном режиме.Однако, поскольку каждая кнопка имеет определенное имя и значение, связанное с ней (что необходимо знать внутреннему сценарию), метод $ ('# myform'). Submit () не будет работать.

function something(msg) {
    var $dialog = $('<div></div>').html(msg).dialog({
        autoOpen: false,
        title: 'Please confirm...',
        modal: true,
        buttons: {
            "OK": function () {
                $dialog.dialog('close');
                //submit needs to happen here
            },
            Cancel: function () {
                $(this).dialog("close");
            }
        }
    });
    $dialog.dialog('open');
    event.preventDefault();
    return false;
}

1 Ответ

1 голос
/ 08 февраля 2012

Я бы включил скрытое поле, чтобы взять имя и значение нажатой кнопки отправки:

<input type="hidden" name="subName" value="" />

$("#submit_button_one").function() {
    $("input[name='subName']").attr("name", $(this).attr("name")).val(($(this).val());
    something("message");
    return false;
});
$("#submit_button_two").function() {
    $("input[name='subName']").attr("name", $(this).attr("name")).val(($(this).val());
    something("message");
    return false;
});

function something(msg, act) {
    // ...
    //submit needs to happen here
    $('#myform').submit()
}
...