【问题标题】:Form validation for saving before exit退出前保存的表单验证
【发布时间】:2013-11-12 10:50:14
【问题描述】:

我在 asp.net 中创建了一个表单,现在我需要对其添加验证,因此如果已填充任何字段并且用户将尝试离开页面,则会出现弹出窗口询问“你想要不保存就退出?”。有没有一种简单的方法可以做到这一点?

 <% using (Html.BeginForm("Create", "Damages", FormMethod.Post))        
   {%>

    <fieldset>
        <legend>Fields</legend>

        <div class="editor-label">
            <%=Html.LabelFor(model => model.OrderId)%>
        </div>
        <div class="editor-field">
            <%= Model.OrderId%>
        </div>  

        ....                              

        <%=Html.HiddenFor(model => model.Id)%>

        <p>
            <input type="submit" value="Save" />
        </p>
    </fieldset>

<% } %>

【问题讨论】:

    标签: asp.net forms validation


    【解决方案1】:

    您可以使用 onbeforeunload 事件:

    <script>
    window.onbeforeunload = function() {
       if( isDirty ) {
          return 'Do you want to exit without saving?';
       }
    }
    </script>
    

    当然,您需要跟踪表单字段的更改并相应地设置 isDirty 标志。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-01-11
      • 2012-09-23
      • 1970-01-01
      • 2012-12-13
      • 2018-02-17
      • 1970-01-01
      • 1970-01-01
      • 2017-02-09
      相关资源
      最近更新 更多