, 나는 모달 창을 열고 오전 :ASP.Net 면도기 MVC 부트 스트랩 로그인 모달 검증
<div class="container-fluid">
<div class="navbar navbar-fixed-top navbar-default">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="offcanvas" data-target=".navbar-offcanvas" data-canvas="body">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand pull-right" href="#">
<img src="assets/img/logo-header.png" alt="Alternate Text for Image">
</a>
</div>
<div class="navbar-offcanvas offcanvas navmenu-fixed-left">
<a class="navmenu-brand" href="#">eServices</a>
<ul class="nav nav-justified">
<li><a href="#" data-toggle="modal" data-target="#modalSignup" data-backdrop="static">New Here?</a></li>
<li><a href="index.html">Services</a></li>
<li><a href="#" data-toggle="modal" data-target="#modalLogin" data-backdrop="static">Sign In</a></li>
</ul>
</div>
</div>
</div>
<div class="modal fade" id="modalLogin" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
<p>
<h3 class="modal-title" id="myModalLabel">Login to MyApplication</h3>
</p>
</div>
@using (Html.BeginForm("index", "home", new { ReturnUrl = ViewBag.ReturnUrl }, FormMethod.Post, new { role = "form", @class = "form-horizontal" }))
{
@Html.AntiForgeryToken()
<div class="form-group @Html.ValidationErrorFor(m => m.Username, "has-error has-feedback")">
<div class="col-sm-12">
@Html.FormTextBoxFor(p => p.Username, new { @class = "form-control" })
@if (!Html.IsValid(m => m.Username))
{
<span class="glyphicon glyphicon-remove form-control-feedback"></span>
}
@Html.ValidationMessageFor(m => m.Username, null, new { @class = "help-block" })
</div>
</div>
<div class="form-group @Html.ValidationErrorFor(m => m.Password, "has-error has-feedback")">
<div class="col-sm-12">
@Html.FormPasswordFor(p => p.Password, new { @class = "form-control" })
@if (!Html.IsValid(m => m.Password))
{
<span class="glyphicon glyphicon-remove form-control-feedback"></span>
}
@Html.ValidationMessageFor(m => m.Password, null, new { @class = "help-block" })
</div>
</div>
@Html.ValidationSummary(true, string.Empty, new { @class = "test" }, "span")
<div class=" pull-right">
<p>
<button type="submit" class="btn btn-default">@Forms.ButtonSignin</button>
</p>
<br />
<p>
@Html.ActionLink("Forgot your username?", "ForgotUsername")
</p>
<p>
@Html.ActionLink("Forgot your password?", "ForgotPassword")
</p>
</div>
}
</div>
</div>
</div>
내가 가진 문제는 예를 들어, 내가 잘못된 사용자 이름/암호를 입력한다는 것입니다
폼의 유효성을 검사하지만 모달 창이 닫힙니다. 유효성 검사에서 오류가 발생하면 양식이 게시 된 후 모달 창을 다시 열 수 있습니까? 당신은 즉
public class AModel
{
public bool IsModalShown { get; set; }
}
IsModalShown
이보기 즉, 모달 true로 숨겨진 값을 설정 열립니다
@Html.HiddenFor(m => m.IsModalShown)
,이 의지에 대한 숨겨진이 렌더링라는 이름의 속성을 추가 할 수