2015-05-28 5 views
7

У меня есть форма с кнопкой отправки, и я хочу показать диалог, прежде чем продолжить подачу формы.Как показать диалог перед отправкой?

Приведенный ниже код показывает диалог правильно, но продолжает подавать в любом случае:

@using (Html.BeginForm("SubmitForm", "Home", FormMethod.Post, new { id = "form" })) 
{ 
    @Html.AntiForgeryToken() 
    *snip* 

    <div class="collapseClosed panel-footer panel-collapse collapse in"> 
     <input type="submit" name="btnSubmit" id="btnSubmit" class="btn btn-success" value="Submit" /> 
    </div> 
} 
<div id="confirm" title="Confirm"> 
    <span id="confirmtext"></span> 
</div> 

<script> 
    $("#btnSubmit").on("click", function() { 
     currentForm = $(this).closest('form'); 
     $("#confirmtext").text("Please confirm."); 
     $("#confirm").dialog('open'); 
    }); 
</script> 

ответ

10

Вам нужно добавить e.preventDefault(); внутри JQuery нажмите событие для предотвращения подачи.

<script> 
    $("#btnSubmit").on("click", function (e) { 
     e.preventDefault(); 
     currentForm = $(this).closest('form'); 
     $("#confirmtext").text("Please confirm."); 
     $("#confirm").dialog('open'); 
    }); 
</script> 
1
<script> 
    $("#btnSubmit").on("click", function (e) { 
     e.preventDefault(); 
     currentForm = $(this).closest('form'); 
     $("#confirmtext").text(Please confirm."); 
     $("#confirm").dialog('open'); 
    }); 
</script> 
+6

Просто код не достаточно, чтобы помочь ОП! Опишите, что вы делаете – Mivaweb

Смежные вопросы