Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/331.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 我希望我的文本框只接受10个数值_C#_Asp.net - Fatal编程技术网

C# 我希望我的文本框只接受10个数值

C# 我希望我的文本框只接受10个数值,c#,asp.net,C#,Asp.net,我正在创建一个网页(不是windows窗体),其中文本框应该只包含10个数字,这不是一个重复的问题 if (!char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar) && (e.KeyChar != '.')) { e.Handled = true; } 缺少引用程序集时出现错误(这仅适用于Windows窗体)。 当我将TextBox属性设置为numeric only时,MAXLENGT

我正在创建一个网页(不是windows窗体),其中文本框应该只包含10个数字,这不是一个重复的问题

if (!char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar) &&
    (e.KeyChar != '.'))
{
        e.Handled = true;
}
缺少引用程序集时出现错误(这仅适用于Windows窗体)。 当我将TextBox属性设置为numeric only时,MAXLENGTH函数不起作用;当设置为TEXT而不是numeric时,MAXLENGTH起作用,但随后它也接受字符。 我不想在提交值时选中此项,当用户在文本框中输入值时应选中此项。
非常感谢您的帮助/建议/评论。

我想这就是您要找的

我使用JavaScript创建了两个独立的函数,代码似乎不是很理想,但对我来说很有用。也许有人谁拥有良好的动手Java脚本可以结合起来

    <SCRIPT language=Javascript>
        function isNumberKey(evt) {
            var charCode = (evt.which) ? evt.which : evt.keyCode;
            if (charCode > 31 && (charCode < 48 || charCode > 57))
                return false;
            return true;
        }
   </SCRIPT>

    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<script type="text/javascript" src="MaxLength.min.js"></script>
<script type="text/javascript">
    $(function () {
        //Normal Configuration
        $("[id*=TextBox4]").MaxLength({ MaxLength: 10 });

    });
</script>

函数isNumberKey(evt){
var charCode=(evt.which)?evt.which:evt.keyCode;
如果(字符码>31&(字符码<48 | |字符码>57))
返回false;
返回true;
}
$(函数(){
//正常配置
$(“[id*=TextBox4]”).MaxLength({MaxLength:10});
});

我希望这能帮助别人

没有人知道它只限制输入,但会接受字符,我知道如何限制字符,我的要求是它应该接受最多10个数字值。我无法获取此组合。当您在网页上运行C#代码时,它将在asp.net服务器上运行!相反,您应该在页面上包含一些JavaScript来处理这种情况,这些JavaScript在客户端上运行。请参见答案,在我更改正则表达式时,将其更改为
\d{10}
@Matt.G,即使用户能够键入10个以上的数字(范围验证器上确实显示错误,但用户可以键入)。但是,我已经得到了解决方案并发布了这个。