Как я могу предотвратить запуск отправки формы? - PullRequest
0 голосов
/ 12 июня 2018

Это моя форма, где у меня есть событие, когда я нажимаю кнопку.

<form id="prefForm4" enctype="multipart/form-data" method="post" class="masters"
    action="/Preferences/Preferences/RISSave">
</form>

У меня есть две кнопки, которые я буду отображать в зависимости от какого-то условия, скажем, когда отображается кнопка1, она выполнит формудействие и когда кнопка2 отображается, она запускает функцию javascript, которая выполняет другое действие, и не должна запускать действие формы, но в моем случае оба метода запускаются.

<input id="button1" name="Save" class="button" type="submit" value="<%="Save".Localize()%>"/>

<input id="button2" name="Save" class="button" type="submit" value="<%="Save".Localize()%>"
                        onclick="saveData();" />

JavaScript ниже

function saveData() {
        $.ajax({
            url: "/Preferences/Preferences/saveData",
            type: "POST",
            data: items,
            success: function (reponse) {
                return true;
            },
            error: function (reponse) {

            }
        });
    }

Пожалуйста, помогите мне в этом.Заранее спасибо.

Ответы [ 4 ]

0 голосов
/ 12 июня 2018

вы можете сделать это так:

$('form').on('submit', function(e)
{
    e.preventDefault(); //this prevents default action

    //whatever else you want to do

    $('form').submit()
})
0 голосов
/ 12 июня 2018

Вы должны сделать кнопки , а не типа отправки, чтобы они не вызывали отправку формы.

0 голосов
/ 12 июня 2018

Измените, где вы вызываете свою функцию, вместо того, чтобы вызывать ее встроенной, создайте прослушиватель событий, а затем вы запретите действия по умолчанию

$('input[name=SavePACS]').on('click', function(e) {
    e.preventDefault()

    // then do your code here
});
0 голосов
/ 12 июня 2018

Измените тип второй кнопки с submit на button Это предотвратит отправку формы.

<input id="button2" name="SavePACS" class="button" type="button" value="<%="SavePACS".Localize()%>"
                    onclick="saveData();" />
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...