Re: [問題] textarea折行問題
阿對了 我再仔細說明一下我的問題好了
這個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
推
01/02 15:55, , 1F
01/02 15:55, 1F
→
01/05 14:03, , 2F
01/05 14:03, 2F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 3 之 3 篇):