<;asp:TextBox>;应该只接受数字
本文关键字:数字 gt lt asp TextBox | 更新日期: 2023-09-27 18:01:50
我在asp中创建了一个文本框,如下所示。现在我的问题是Textbox应该只接受数字。
<asp:TextBox ID="txtRate" runat="server" Text="" Width="100%" TabIndex="6" ></asp:TextBox>
如何在Js文件中实现函数并在asp文件中调用它。我尝试过按键事件,但错误是"按键不是asp文本框的属性"。
我尝试过Rangevalidator,RegularExpressionValidator,尽管我无法获得要求。
请帮我做这件事。。
您应该使用CompareValidator
,Operator
设置为DataTypeCheck
:
<asp:CompareValidator runat="server" Operator="DataTypeCheck" Type="Double"
ControlToValidate="txtRate" ErrorMessage="Value must be a number" />
以下是您可以检查的类型:
- 字符串
- Integer
- Double
- 日期
- 货币
<asp:FilteredTextBoxExtender ID="TextBox1_FilteredTextBoxExtender" runat="server"
Enabled="True" TargetControlID="TextBox1" FilterType="Numbers">
</asp:FilteredTextBoxExtender>
使用范围验证器或正则表达式验证器。您必须为文本框设置ValidationGroup和CausesValidation。
请参阅:http://www.tutorialspoint.com/asp.net/asp.net_validators.htm例如。
您还可以使用javascript在客户端进行验证。
<asp:CompareValidator runat="server" ControlToValidate="txtRate" Type="Integer" Operator="DataTypeCheck" Text="Must be a number!"/>
如果需要,可以将Integer
换成Double
。
我在一个项目中使用RegularExpressionValidator只接受数字和小数。
<asp:RegularExpressionValidator ID="RepRateRegExVal"
ControlToValidate="repRateTxtbox"
ValidationExpression="^'d*'.?'d*$"
runat="server"
Display="Dynamic"
CssClass="validator"
Text="Repetition Rate must be a valid number">
</asp:RegularExpressionValidator>
如果您只想接受小数后一位,请将表达式更改为"^''d*.?''d$">
这个应该有效:
<script language="javascript" type="text/javascript">
function CheckNumeric(e) {
if (window.event) // IE
{
if ((e.keyCode < 48 || e.keyCode > 57) & e.keyCode != 8) {
event.returnValue = false;
return false;
}
}
else { // FireFox
if ((e.which < 48 || e.which > 57) & e.which != 8) {
e.preventDefault();
return false;
}
}
}
</script>
<asp:TextBox ID="txtRate" runat="server" Text="" Width="100%" TabIndex="6" onkeypress="CheckNumeric(event);"></asp:textbox>
源
您应该使用ajaxtoolkit来完成
<ajaxToolkit:FilteredTextBoxExtender ValidChars="yourcharallow" runat="server" Enabled="True" TargetControlID="yourTextBox" ID="FilteredTextBoxExtender1"></ajaxToolkit:FilteredTextBoxExtender>