永发信息网

c# .net 做的网页,texbox 写了MaxLength="30",为什么还有几条记录>30了?请教高手!

答案:4  悬赏:40  手机版
解决时间 2021-04-01 13:51
c# .net 做的网页,texbox 写了MaxLength="30",为什么还有几条记录>30了?请教高手!
最佳答案
maxlength只是在手工改变数据时,会限制最大值。如果你的数据是在后台初始化时填充,即PAGE_LOAD时填充的,那么不会做限制。
比如A,B两个表,A1,B1字段。A1长度为30,B1长度为40,你保存了数据A1=“30个字符的长度。。。。”,B1=“40个字符的长度。。。。。。。”,提交上去,数据写入到数据库中。然后你修改页面上的两个文本框 textA1.Maxlength=30,textB1.Maxlength=30。重新编辑下,再F5走程序,你会发现,首次加载时填充的textB1.value 是数据库的长度为40的数据,而不是你想要自动截取了长度为30个字符的数据。这也是大家在创建表结构时,需要注意的事情,如果以后遇到多表用相同类型的字段,且又需要多表存在时,一定要记得类型及长度保持一致。追问库开始是空的,全部记录都通过页面提交,数据库我用的nvarchar(60)类型,几十万条记录 就有20条左右超了30长度,从页面输入时就做了控制,不知道怎么存进去的追答哥呀,你的类型是nvarchar(60)啊,这个数据类型可以存储60个汉字,120个字符。
如果你是手工输入的数据,页面又做了maxlength=30的限制,那么数据有个别的超过了长度为30的,你要看看SAVE()方法在更新操作时是不是对字段追加了什么。页面的限制maxlength也是包含空格这种数据的。追问开始的确存在数据库没有设计好的问题,可是几十万条记录,只有20条超长了,应该属于个例了吧? save方法应该不会有问题,否则大多数就要出问题了啊,初步分析是不是有什么浏览器不支持maxlength追答你用的啥浏览器?oper?火狐?maxlength应当是通用的属性,没啥不支持的吧。
你把错误数据帖出来,咱瞧瞧是什么样的?追问不是我浏览器的问题,是我做的网站,放公网上,有用户填报,今天查看数据,发现这个问题。错误数据就是:按理来说不应该有len>30的,结果发现20条。最长的一个是有59个汉字。程序倒是不报错,因为数据库字段长度设计的大了嘛,nvarchar(60)类型,可存60个汉字。追答你自己做下操作,从其它地方复制,拖拽,超过30个字符的数据,放到网站上,看看能不能放进去。如果能放进去,有可能是用户用的这种操作。你的文本框就要加onchage()方法,用JS验证,或者在后台进行合法数据的长度验证。追问我试过了,都不行,自动就截取了。追答哦。那客户用的是什么浏览器?你能不能用他们的复现下?如果问题无法复现,咱俩光在这说,也没用啊。
我现在有种怀疑的问题,如果是几十万条数据,有20条件错误数据,会不会是人为手工改的数据?你可以问问你们同事。我估计客户应当没那么闲的改数据。追问那应该不会,服务器全部在我们这,密码只有我俩人知道。 不管了,就这样着吧,呵呵 谢谢你了!
全部回答
似乎只控制输入,原先的控制不了吧
你只说是textbox的长度你限制了。你在录入的时候做限制了么?
或者说你以为在web端控制了输入限制,就OK?
你知道maxlength这个其实最终是被解释成了JS来运行的。
我不知道你是怎么把数据传入数据库的,但是你肯定没有在录如数据前检查数据的安全性!
你的数据超过30说明不是正常数据,你既不做限制 也不抛出异常。数据出问题,你肯定找不到原因,try{}catch(){}你的代码。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
蒸卤面是水开后再放入面条?
为什么爱一个人·就想完全占有他
为什么称北魏文明太后为千古一后?
发生工伤事故,可以获得哪些赔偿
jeep牧马人柴油版在2h时是前驱还是后驱
万婴茂华国际幼儿园怎么样?
把一个女人吓了应该怎样安慰
周大福八百多买的彩金耳环能换购黄金吗?买了
魔兽争霸兽族厉害还是不死族了
粤菜怎么做才好吃
昌吉州初中外招学校有哪些
beyond吉星高照里面的那歌叫什么名字
单反相机全画幅和C画幅差距大吗
亚洲独有的气候类型有哪些
离心机注册商标属于哪一类?
推荐资讯
在县里单位缴纳的公积金能在地级市买房吗?
什么是报文认证?
动画片大全爱奇艺的猪猪侠8岁
股市对家什么意思
身入贺兰山黄文山阅读答案
一字两只手,一手在左边,一手掌下边,打一字
单选题20世纪80年代,我国从意大利的梅洛尼公
渑池县三门峡发宝美发彩妆造型渑池旗舰店这个
我想做纸黄金,哪个银行好?
Our school looks more beautiful with many
身在国外 如何用英语正确礼貌提出请求
在ZARA买了一件有问题的衣服,没有小票可以换
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?