不含特殊字符的文本框最大字符数
本文关键字:字符 文本 特殊字符 | 更新日期: 2023-09-27 18:03:58
我有一个文本框,其中包含数值和千个分隔符等。例如:12,111,111,111.804
最大长度为14个字符。
问题是,当我编辑该文本框时,它会计算特殊字符,并且不允许在框中输入新值。如何简单地消除最大长度中的特殊字符?
编辑:对不起,伙计们出城了。假设我们取下面的数字:12,312,312,312,312。所以一共有14位。把最后3擦掉。所以是12,312,312,312。现在我想再加3个数字作为我删除的数字。我用的是。net 2.0。这是一个Windows应用程序
添加keyPress事件并包含以下代码。将>= 5替换为不包括小数或逗号的文本框的最大大小。
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if(Char.IsNumber(e.KeyChar))
if(textBox1.Text.Replace(",", "").Replace(".", "").Length >= 5)
e.Handled = true;
}
您可以尝试使用以下jquery代码,根据需要自定义它:
$(document).ready(function ()
{
$('#textbox1').keyup(function (event)
{
var currentValue = $(this).val();
var length = currentValue.length;
var commaCount = 0;
// Get Comma Count
for (i = 0; i < this.value.length; i++)
{
if (this.value.charAt(i) == ',')
commaCount++;
}
if (length > 3)
{
// remove comma's to work out the number of digits.
length = length - commaCount;
}
if (length<=14)
{
$(this).val(currentValue);
}
else
{
alert("validation fails! length can not exceed 14 digits");
}
});
});
您可以使用Linq
对字符串
int count = textBox1.Text.Count(char.IsNumber);
你可以用
if (textBox1.Text.Count(char.IsNumber) <= 14)
{
//valid
}