关于长度验证问题!不能使用验证控件,高手请进!

NetUp001 2003-07-22 03:53:41
我的TextBox 是DataGrid模板列,用不了验证控件,对应数据库中的一个字段。

我想进行数据库插入之前, 判断TextBox中文字的长度,不能超过数据库字段长度,

我通过TextBox.Text.Length的到长度。但如果用户输入中文的话,就有问题

比如数据库中字段长度为8

我TextBox输入 "大家早上好" 我的到长度为5,但实际是10,会超出长度范围

大家有什么好办法解决?

...全文
46 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiajianfeng 2003-07-22
  • 打赏
  • 举报
回复
int Length;
Length = System.Text.Encoding.Default.GetByteCount("str大家早上好");
Englishgenius 2003-07-22
  • 打赏
  • 举报
回复
Str是你要测试的字符串
int length=System.Text.Encoding.Default.GetByteCount(Str);
Englishgenius 2003-07-22
  • 打赏
  • 举报
回复
str是你要测试的字符串
int length=System.Text.Encoding.Default.GetByteCount(myStr);

length是你要的长度。。

panyee 2003-07-22
  • 打赏
  • 举报
回复
//计算字符串实际字节长度
function GetByteLength(str)
{
var iLen = 0;
for(i = 0; i < str.length; i ++)
{
if(str.charCodeAt(i) >= 8481 && str.charCodeAt(i) <= 63486)
iLen += 2;
else
iLen += 1;
}
return iLen;
}
NetUp001 2003-07-22
  • 打赏
  • 举报
回复
关键是可能又有中文又有字母阿?
Endlessrain 2003-07-22
  • 打赏
  • 举报
回复
捕捉数据库返回的错误代码,字段超长好像是-8152
cyp503 2003-07-22
  • 打赏
  • 举报
回复
对于中文

string _s="大家中午好";
int _l=_s.Length*2;

然后判断_l

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧