黑马程序员技术交流社区

标题: TextBox有个缺陷,限制长度的时候中文也算一个字符,如何让中文算两个字符? [打印本页]

作者: 柏森仁    时间: 2012-8-9 17:35
标题: TextBox有个缺陷,限制长度的时候中文也算一个字符,如何让中文算两个字符?
如题, TextBox在限制长度的时候不管中英文都算一个字符, 如何让中问算两个字符来计算长度?
作者: 许庭洲    时间: 2012-8-10 08:14
本帖最后由 许庭洲 于 2012-8-10 08:15 编辑

可以在前台页面设置TextBox控件的属性,例如设置密码文本框控件的最大长度为20,这样就能解决在文本框中限制中文输入的个数,从而保证与后台数据库内的密码字段类型nvarchar保持一致。
<asp:TextBox ID="TBpassword" runat="server" MaxLength="20" TextMode="Password" Width="90px"></asp:TextBox>
作者: 黑马李果    时间: 2012-8-10 12:33
  1. int GetTBLength(TextBox tb)
  2. {
  3. string content=tb.Text;
  4. int length=content.Length;
  5. foreach(char ch in content)
  6. if (ch>=0x4e00 && ch<=0x9fa5) //判断当前字符是否为汉字
  7. length++;
  8. return length;
  9. }
复制代码





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2