ASP.net:当在TextMode=“”中通过键盘键入时,TextBox允许超出范围的数字;数字”;
本文关键字:数字 TextBox 许超出 范围 键盘 TextMode 当在 net ASP | 更新日期: 2023-09-27 18:29:43
我想要ASP.net网络表单中NumericUpDown的TextBox值在1到99之间。(没有使用NumericUpdown Extended Ajax Control Toolkit,因为我的客户端不允许这样做)。因此,我使用以下代码:
<asp:TextBox TextMode="Number" runat="server" min="1" max="99" step="1" ID="tbRooms" />
当我使用上下箭头键时,这很好,它的范围仅在1到99之间。然而,当我从键盘上键入值时,它会取任何随机值,比如1000。我试着放MaxlLength = "2"
,但没有成功。那么,我该如何解决这个问题,这样即使通过键盘也不允许任何随机数字。
谢谢。
请尝试这个:
<table border="0" cellpadding="0" cellspacing="0">
<tbody>
<tr>
<td>
<b>Enter Value</b>
<asp:textbox runat="server" id="txtRangeValidator">
</asp:textbox>
</td>
</tr>
<tr>
<td>
<asp:rangevalidator ID="Rangevalidator1" errormessage="Please enter value between 1-99." forecolor="Red" controltovalidate="txtRangeValidator" minimumvalue="1" maximumvalue="99" runat="server" Type="Integer">
</asp:rangevalidator>
</td>
</tr>
</tbody>
</table>
onKeyPress添加此代码:
onKeyPress="if(this.value.length==2)return false;"