範囲バリデータを含むフォームがあります:
<label class="required" for="price">price</label>
<input runat="server" id="price" name="price" type="text" required="required"/>
<asp:RangeValidator runat="server" ControlToValidate="price" ErrorMessage="Must be between 0 and 15,000" MinimumValue="0" MaximumValue="15000"></asp:RangeValidator>
ただし、「22」や「5」などの値は拒否されますが、値「0」や「15,000」は受け入れられます。その上、フォームの送信ボタンがすべての入力に対して応答しなくなります。範囲バリデーターが機能しないのはなぜですか?
編集:これがフォームボタンです
そして、rangevalidatorを持っているときに起動しないように見える送信機能。rangevalidator を削除すると、次のコードが実行されます。
protected void btnSubmit_Click(object sender, EventArgs e)
{
formInputs.Visible = false;
emailNotification.Visible = true;
MailMessage mail = new MailMessage();
mail.To.Add(emailField.Value);
mail.From = new MailAddress("no-reply@gmail.com");
mail.IsBodyHtml = true;
mail.Subject = "Your Form has been submitted";
mail.Body += "Location: ";
mail.Body += location.SelectedValue + "<br>";
mail.Body += " address: ";
mail.Body += address.Value + "<br>";
mail.Body += "price: " + price.Value + "<br>";
mail.Body += "Date submitted: " + todaysDate.Value + "<br>";
if (FileUploadControl.HasFile)
{
string filename = Path.GetFileName(FileUploadControl.FileName);
FileUploadControl.SaveAs(Server.MapPath("~/") + filename);
mail.Attachments.Add(new Attachment(HttpContext.Current.Request.MapPath(filename)));
}
SmtpClient smtp = new SmtpClient(System.Configuration.ConfigurationManager.AppSettings["mailsetting"]);
smtp.Send(mail);
}