簡體   English   中英

如何在MVC中使用復選框驗證文本框?

[英]How to validate textbox with checkbox in MVC?

我有這個ViewModel

   public string Address { get; set; }
   [DisplayName("Do you want Reward?")]
   public bool IsReward { get; set; }

   [Range(0,int.MaxValue,ErrorMessage="Please enter integer number")]

   [DisplayName("Reward")]
   public int Reward { get; set; }

在“視圖IsReward屬性中,默認情況下未選中IsReward屬性,當用戶選中“ Isreward並發布視圖時,如果“ Reward文本框為空,則向用戶顯示錯誤消息“請輸入獎勵”。

如何使用DataAnnotation驗證它?

請嘗試以下代碼。 如果IsReward為true並且Reward文本框值為零,它將顯示錯誤消息。

    [RewardValidation]
    public class RewardModel
    {
        public string Address { get; set; }
        [DisplayName("Do you want Reward ؟")]
        public bool IsReward { get; set; }

        [Range(0, int.MaxValue, ErrorMessage = "Please enter integer number")]

        [DisplayName("Reward")]
        public int Reward { get; set; }
    }

public class RewardValidation : ValidationAttribute
{
    public override bool IsValid(object value)
    {
        RewardModel app = value as RewardModel;
        if (app.IsReward && app.Reward==0)
        {
            ErrorMessage = "please enter Reward";

            return false;
        }
        return true;
    }
}

並在視圖中包含@Html.ValidationSummary(true)以顯示消息

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM