用MAXLENGTH限制不了.
一个汉字占一个长度.但占两个字节.
一个字母占一个长度.但占一个字节
System.Text.Encoding.Default.GetByteCount(this.txtInfo.text);
一个汉字占一个长度.但占两个字节.
一个字母占一个长度.但占一个字节
System.Text.Encoding.Default.GetByteCount(this.txtInfo.text);
{
return str.replace(/[^\x00-\xff]/g,"**").length;
}
var str = "hehe呵呵";
alert(utflength(str));
const int MAXBYTECOUNT = 100;private void txtInfo_TextChanged(object sender, EventArgs e)
{
this.txtInfo.MaxLength = (MAXBYTECOUNT - Encoding.Default.GetByteCount(this.txtInfo.Text)) / 2;
}MAXBYTECOUNT是最大字节数
txtInfo_TextChanged是txtInfo的TextChanged事件
var txtLength = document.getElementById("TextBox1").value.length;
if(txtLength >= 要控制的字符数)
{
return;
}
不过记得InputMan v4.0 for .NET是有类似MaxByteLength属性,可以限制输入字节数,lz可以到grapecity网站找找。