Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Как добавить всплывающее окно подтверждения на кнопку (действие GET POST в MVC)?

Автор вопроса: MrMОтветов: 1

У меня есть функция get/post/JSON на странице aspx. Эта страница добавляет данные, введенные в текстовое поле, в таблицу, заполненную javascript. Когда пользователь выбирает кнопку отправки. Если текстовое поле не пусто, используйте всплывающую кнопку, сообщающую пользователю, что данные в текстовом поле не сохраняются в таблице. Как сделать так, чтобы всплывающее окно подтверждения "ok/cancel" отображалось в действии публикации в контроллере? Я сделал краткий обзор того, как выглядит мой код.

...
<%  using (Html.BeginForm("AddName", "Name", FormMethod.Post, new { id = "AddNameForm" })) { %>
...
<table id="displayNameTable" width= "100%">
    <tr>
        <th colspan="3">Names Already Added</th>
    </tr>
    <tr>
        <td style="font-size:smaller;" class="name"></td>
    </tr>
</table>
...
<input name="Name" id="txtInjuryName" type="text" value="<%=test.Name %>" />
...
<input type="submit" name="add" value="Add"/>
<% } %>
<form id="form1" runat="server">
           string confirmNext = "";
    if (test.Name == "")
    {
       confirmNext = "return confirm('It seems you have a name not added.\n\nAre Continue?')";
    }%>
    <input type="submit" name="getNext" value="Next" onclick="<%=confirmNext%>" />
</form>

htmlmodel-view-controller

Ответы

Ответ 1 · рейтинг 4 · Darin Dimitrov

Вы можете использовать событие формы onsubmit:

<form id="form1" onsubmit="return confirm('It seems you have a name not added.\n\nAre Continue?')">
    <input type="submit" name="getNext" value="Next" />
</form>

Также почему runat="server" в приложении ASP.NET MVC? Также вы можете рассмотреть возможность указания action, в который отправляется эта форма, и использовать хелпер Html.BeginForm, как для вашей первой формы.

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы