2016-03-22 18 views
0

フォームを含む部分ビューがありますが、検証エラーが表示されないようです。パーシャルビューからの検証エラーが表示されない

モデル

public class HomeModel 
{ 
    public LoginModel LoginModel { get; set; } 
} 

public class LoginModel 
{ 
    [Required] 
    [Display(Name = "Email")] 
    public string Username { get; set; } 

    [Required] 
    public string Password { get; set; } 
} 

Index.cshtml:

@model MyApp.Models.HomeModel 

@{     
    await Html.RenderPartialAsync("_LoginPartial", Model.LoginModel); 
} 

にHomeController

public IActionResult Index() 
{ 
    return View(new HomeModel() 
    { 
     LoginModel = new LoginModel() 
    }); 
}   

[HttpPost] 
public IActionResult Login(LoginModel model) 
{ 
    return View("Index", new HomeModel() 
    { 
     LoginModel = model 
    }); 
} 

_LoginPartial

@model MyApp.Models.LoginModel 
<form asp-action="Login" asp-controller="Home" method="post" role="form" style="width:70%;margin: 0 auto;"> 
    <div style="display:none" asp-validation-summary="ValidationSummary.All" class="alert alert-danger fade in"> 
     <a href="#" class="close" data-dismiss="alert">&times;</a> 
     <strong>Error!</strong> A problem has been occurred while submitting your data. 
    </div> 
    <div class="form-group" style="text-align:left"> 
     <label asp-for="Username" style="font-size:22px;" class="control-label"></label> 
     <input asp-for="Username" type="text" class="form-control" /> 
    </div> 
    <div class="form-group" style="text-align:left"> 
     <label asp-for="Password" style="font-size:22px;" class="control-label"></label> 
     <input asp-for="Password" type="password" class="form-control" /> 
    </div> 
    <div class="spacer-15"></div> 
    <div class="form-group" style="font-size:22px;"> 
     <button type="submit" 
       style="background-color: Transparent; 
         background-repeat:no-repeat; 
         border: none; 
         cursor:pointer; 
         overflow: hidden; 
         outline:none;" value="Login"> 
      <img src="~/images/flower.png" />Next 
     </button> 
    </div> 
</form> 
+0

これはどのバージョンですか? – Chad

+0

@Chadバージョンは6.0 rc1 –

+0

@rashfmnb - それはありますか、それは見えませんか? –

答えて

0

あなたはいくつかのことを逃しているように見えます。それぞれの入力には、asp-validation-forを使用する対応する検証要素が必要です。あなたはjQueryの検証を使用して計画している場合

<div class="form-group" style="text-align:left"> 
    <label asp-for="Username" style="font-size:22px;" class="control-label"></label> 
    <input asp-for="Username" type="text" class="form-control" /> 
    <span asp-validation-for="Username" class="text-danger"></span> 
</div> 

同様に、あなたはあなたの_Layout.cshtmlファイルの環境要素に以下を追加する必要があります。

<script src="~/lib/jquery-validation/dist/jquery.validate.js"></script> 
<script src="~/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.js"></script> 
+0

確かに。私はそこにASP検証を入れていると思っていましたが、ある時点でそれを削除しておく必要があります。 –

関連する問題