2017-09-26 3 views
1

私は剣道検証を使用するMVCページを作成しています。MVC - 正規表現の検証に失敗したときに電子メールフィールドの表示エラーを表示させたくない場合はどうすればよいですか?

私は、次のモデルがあります:私は私の見解は、電子メールフィールドのエラーメッセージを表示したくない

public class ForgotPasswordModel 
{ 
    [Required(ErrorMessage = " ")] 
    public string UserName { get; set; } 

    [Required(ErrorMessage = " ")] 
    [EmailAddress(ErrorMessage = " ")] 
    public string Email { get; set; } 

    public string PhoneNumber { get; set; } 

    [Required(ErrorMessage = " ")] 
    public string Code { get; set; } 
} 

を。検証に失敗した場合に感嘆符だけを表示したい。

現在、私は、私の見解では、次のコードを持っている:

@model Site.Models.ForgotPasswordModel 

@{ 
    ViewBag.Title = "Forgot Password"; 
    Layout = null; 
} 

<!DOCTYPE html> 

<html> 
<head> 
    <meta charset="utf-8" /> 
    <meta name="viewport" content="width=device-width, initial-scale=1.0"> 
    <meta http-equiv="X-UA-Compatible" content="IE=Edge"> 
    <meta name="viewport" content="width=device-width" /> 
    <title>Login</title> 

    <link href="~/Content/Site.css" rel="stylesheet" type="text/css" /> 
    <link href="~/Content/bootstrap.min.css" rel="stylesheet" type="text/css" /> 

    <script src="~/Scripts/jquery-3.1.1.min.js"></script> 
    <script src="~/Scripts/bootstrap.min.js"></script> 

    <link href="~/Content/kendo/kendo.common-material.min.css" rel="stylesheet" /> 
    <link href="~/Content/kendo/kendo.custom.css" rel="stylesheet" /> 
    <link href="~/Content/kendo/custom.css" rel="stylesheet" /> 

    <script src="~/Scripts/kendo/kendo.all.min.js"></script> 
    <script src="~/Scripts/kendo/kendo.aspnetmvc.min.js"></script> 


    <script src="~/Scripts/jquery.unobtrusive-ajax.min.js"></script> 
    <script src="~/Scripts/jquery.validate.min.js"></script> 
    <script src="~/Scripts/jquery.validate.unobtrusive.min.js"></script> 

    <style> 
     input[type=text]::-ms-clear { 
      display: none; 
     } 

     input[type=password]::-ms-reveal { 
      display: none; 
     } 

     .errMsg { 
      font-weight: bolder; 
      color: red; 
     } 

     span#UserName_validationMessage, span#Email_validationMessage,span#Code_validationMessage { 
      display: inline-block; 
      width: 160px; 
      text-align: left; 
      border: 0; 
      padding: 0; 
      margin: -20px; 
      background: none; 
      box-shadow: none; 
      color: red; 
     } 

     .k-invalid-msg { 
      display: none; 
     } 
    </style> 

</head> 
<body> 
    <div> 
    </div> 
    <div style="margin-top: 20px;"> 
     <div style="margin: 0 auto; width: 940px; height: 409px; background-image: url('../../Content/images/finance-globe.jpg');"/> 
      @using (Html.BeginForm(null, null, FormMethod.Post, new { id = "ForgotPasswordForm" })) 
      { 
       <div style="margin: 0 auto; margin-top: 20px;"> 
        <table id="ForgotPassword" style="margin: 0" auto;"> 
         <tr style="height:40px;"> 
          <td>@Html.EditorFor(x => x.UserName, new { htmlAttributes = new { @class = "form-control k-textbox checkError", placeholder = "username" } })</td> 
         </tr> 
         <tr style="height:40px;"> 
          <td>@Html.EditorFor(x => x.Email, new { htmlAttributes = new { @class = "form-control k-textbox checkError", placeholder = "email" } })</td> 
         </tr> 
         <tr style="height:40px;"> 
          <td>@Html.EditorFor(x => x.PhoneNumber, new { htmlAttributes = new { @class = "form-control k-textbox", placeholder = "phone number" } })</td> 
         </tr> 
         <tr style="height:40px;"> 
          <td>@Html.EditorFor(x => x.Code, new { htmlAttributes = new { @class = "form-control k-textbox checkError", placeholder = "code" } })</td> 
         </tr> 
        </table> 
       </div> 
      } 
    </div> 
</body> 
</html> 

<script> 
    $(document).ready(function() { 
     $("#ForgotPasswordForm").kendoValidator(); 
    }); 
</script> 

モデルとビューは次のように生成します。

enter image description here

私は、「メールが有効ではありません」というメッセージをしたくありません正規表現の検証に失敗した場合に表示されます。

感嘆符が必要です。

どうすればいいですか?

答えて

0

電子メールフィールドには、無効な電子メールフィールド値の検証メッセージをカスタマイズする方法であるdata-email-msg属性を追加できます。 EXのために

:あなたは電子メールIDの間違った値のための空白のメッセージを表示したい場合は、次のような何かを行うことができます。

<input type="email" name="email" id="email" name="email" data-email-msg=""> 

そして、あなたはあまりにもrequired field validation messageをカスタマイズしたい場合は、別のものを追加することができます属性data-required-msgは次のとおりです。

<input type="email" name="email" id="email" name="email" data-email-msg="" data-required-msg=""> 
関連する問題