簡體   English   中英

文本框上的asp.net范圍驗證器

[英]asp.net range validator on textbox

我有一個asp:textbox附帶了必需和范圍驗證器,代碼如下所示:

ASP:

<asp:TextBox ID="textBox1" runat="server" CausesValidation="true"></asp:TextBox>
<asp:RangeValidator ID="rangeValidator1" runat="server" ControlToValidate="textBox1" MaximumValue="1" MinimumValue="0"
     ValidationGroup="valid" ForeColor="Red" ErrorMessage="Out of Range" />
<asp:RequiredFieldValidator ID="requiredValidator1" runat="server" ControlToValidate="textBox1"
     ValidationGroup="valid" ForeColor="Red" ErrorMessage="Cannot be blank" />

當頁面被動態加載時(在快速回調之后),我的代碼應該將RangeValidator的MaximumValue更改為更具體的值。 這是代碼:

rangeValidator1.MaximumValue = GetMaxValue(params).ToString();

現在,我已經設置了斷點,並且正確設置了rangeValidator1.MaximumValue ,但是,當頁面加載時,我查看編譯的客戶端javascript,看起來最大值仍然只有1。

更讓我困惑的是,只要第一個數字是'1',任何輸入的整數都會通過。 因此,如果maxValue 應該類似於“1234567”,則“1”將匹配,“12345678910”也將匹配。 但“2”不會。 “3000”或“46000”也不會。

還有其他人在Textboxes上有類似的RangeValidators問題嗎?

RangeValidator處理多種類型的驗證。 您應該確保將Type設置為Integer。 或者什么是合適的。

暫無
暫無

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

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