終於試著寫一個 jQuery Plugin,功能是限制 input 或 textarea 中的文字長度,同時可針對中英文做不同的字元計算,中文時算為 2 字元、英文時則算 1 字元。
使用方法:
Basic:
$(document).ready(function () {
$('目標對象').ChineseLengthLimit();
});
Advanced:
$(document).ready(function () {
$('目標對象').ChineseLengthLimit({
limitCount: 11,
isByte: true,
callback: function (data) {
$("#msg").html("目前輸入:" + data.input + "/" + data.max + " 還剩:" + data.left + "字元");
}
});
});
下面是可以調整的選項:
Options | Description |
---|---|
limitCount | 最大長度限制。預設值為 10。若目標對象有 maxlength 屬性,則以此數字限制。但若在 $(目標對象).ChineseLengthLimit( opts ) 中有傳入字數限制,則以此設定為最優先。 |
isByte | 是否採用位元限制。預設值為 true。若採用,則會以中文字以 2 字元、英文字以 1 字元的方式計算。 |
callback | 當 keyup 與 paste 事件觸發時,呼叫的 callback 事件。無預設 function。使用範例:
callback: function (data) { $("#msg").html("目前輸入:" + data.input + "/" + data.max + " 還剩:" + data.left + "字元"); } 回傳的 Object 中擁有三個屬性:
|