作者SearchNow ( )
看板Web_Design
标题Re: [问题] textarea折行问题
时间Wed Jan 2 00:23:24 2008
阿对了 我再仔细说明一下我的问题好了
这个textarea中 每一行是资料库中的一个栏位 栏位长度为35
所以资料库中共有五个栏位 必须塞入textarea中这五行的值
所以我必须严格控管每一行的byte数 <= 35
也有想过在 onBlur事件 再作处理
不过就是怕使用者会吓到 想说怎麽刚刚输入的字被截掉很多...........
很感谢各位协助罗 这问题真的让我头很大 ><"
※ 引述《LPH66 (IWH68S0XZ8M89)》之铭言:
: ※ 引述《SearchNow ( )》之铭言:
: : 最近遇到一个棘手进阶版textarea断行问题
: : 限制条件 :
: : (1) 最多 5 行 (rows=5)
: : (2) 每行若达35bytes即折行
: : (这里指的bytes指的是UTF8编码的bytes 因为要塞入Oracle资料库里)
: : 判断方式 escape(输入的字元).length >= 4
: : => 累加 3 bytes
: : else => 累加 1 byte
: : 照这个逻辑写的话
: : 这个textarea会非常不好用
: : js code 请见 : http://0rz.tw/2e3uh
: : <textarea onKeyDown="return
: : countBytes(event,this,5,5);" rows="5" ></textarea>
: : 感谢各位的协助
: : 这问题困扰我好久了 Orz~
: 有charCodeAt这个函数可以用
: http://www.w3schools.com/jsref/jsref_charCodeAt.asp
: 然後UTF-8的长度是这样:
: UTF8长度 Unicode范围
: 1 byte U+0~U+7F
: 2 byte U+80~U+7FF
: 3 byte U+800~U+FFFF //常用中文字位於U+4E00~U+9FFF
: 个人以为 最多才5x35=175 byte (175/3=58个中文字...)
: 不如在离开textarea时再检查&断行就好
: 然後如果是输入中文的话 一行最多12个字
: 所以我比较会先用<textarea rows="5" cols="25" wrap="soft">给个视觉上的限制
: ↑
: 在离开textarea时(onBlur)再做调整 用25是考虑到英文较多的行
: 26的话一行可以有13个中文字
: 到时排好版时右边会空一个中文宽的空间
: 有点怪怪的
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 221.169.1.184
1F:推 chph:为什麽你不用五个textbox作?textarea不是这样用的 01/02 15:55
2F:→ ckai1983:对呀 干麻不用 input 01/05 14:03