導航:首頁 > 編程語言 > js限制輸入位元組長度

js限制輸入位元組長度

發布時間:2025-05-28 21:23:13

1. 如何限制textarea標簽文本長度

方法1:使用maxlength屬性

<textarea id="mess-input" type="text" name="message" maxlength="10"></textarea><br>
使用maxlength即可限制最大字元數,但該屬性不兼容IE8,所以考慮用下面的辦法。

方法2:js實現-達到最大長度後禁用鍵盤輸入

window.onload = function()
{
document.getElementById('text1').onkeydown = function()
{
if(this.value.length >= 10)
event.returnValue = false;
}
}

上述代碼在textarea值長度超過10時,禁用鍵盤輸入。但該方法在firefox17瀏覽器中不兼容,且有兩個bug。

1.長度達到最大以後,由於屏蔽鍵盤動作,已輸入的文本內容無法刪除和編輯。

2.如果使用ctrl+v直接粘貼入一段長度超限的文本,則該方法無效。

方法3:js實現-用substr方法截取textarea前端若干字內容

function limitLength(obj, length) {
var desc = obj.value;
obj.value = substr(obj.value, length);
}
function substr(str, length) {
var l = 0, i = 0;
while (l < length && i < str.length) {
l += 1;
if (str.substring(i, i + 1).match(/[\u4e00-\u9fa5]/)) l += 2;
i += 1;
}
return str.substring(0, i);
}

該方法監測文本框輸入,當超出最大長度時,從前面截取最大長度個位元組放入文本框中。該方法在各瀏覽器中均支持,且無方法2中的各種問題。

以上就是限制<textarea>標簽最大字元數的3種方法,如果需要分別限制中英文字元數的話,在js代碼前加一段正則表達式匹配,並分別做限制即可。

中文及字元正則表達式: /[^ -~]+/g

ASCII碼正則表達式: /\D+/g

2. 如何用JS 限制text框裡面最多為 24個字母或12個漢字,即24位元組

我覺得還是直接使用 maxlength,你提到的想用位元組來限制其實不合理,字元本身就是給人用眼版睛看的,權只有給機器看的才用位元組.既然你是讓人來錄入數據那就當然是表示:"由人提供數據,並且給人用」,因此你用字元來計數的想法本身有問題.

3. JS中文本輸入框驗證不為空,且輸入位元組不能超過2000

<input type="text"
class="inpt w180" validate="{required:true,maxlength:2000,messages:{required:'不能為空',maxlength:'最多輸入2000個字元'}}"/>

用jquery validate 一行代碼搞定。你寫的太復雜了。

4. js或者jquery限制input輸入位元組

functiongetStringBytesLength(str)
{
varlen=0;
for(vari=0;i<str.length;i++)
{
varstr1=str.charAt(i);
if(str1.getBytesLength()===2)
len+=2;
else
len++;
}
returnlen;
}

這是一個按位元組來檢測字元串回長度的函數,只需答傳入需檢測到字元串,就能返回位元組長度,接下來的事情就簡單了

5. 如何用JS 限制text框裡面最多為 24個字母或12個漢字,即24位元組。不用mexlength

var reg = /^([a-zA-Z]{1,24}|[\u4e00-\u9fa5]{1,12})$/;

6. JSP,怎樣實現控制文本區域的漢字個數,假如說超過1000個位元組就無法輸入

用js控制一下 。。長度到達1000的時候。。變成只讀的。就寫不進去了。

7. HTML文本框中怎麼限制輸入字元長度

<script language="javascript">
function calculate() {
String.prototype.lenB = function(){return this.replace(/[^\x00-\xff]/g,"**").length;}
//var str = "這是一個可以將漢字計算成兩個位元組的函數";
var str =document.all.uInput.value
alert("count = " + str.lenB());
}
</script>

請輸入<input name="uInput" type="text">
<input type="button" value="計算" onclick="calculate()"/>
結果為<input name="result" type="text">

執行下這個代碼你就懂了,之後用js對str.lenB()判斷就行了,str.lenB()可以將漢字計算成兩個位元組。

8. 我現在在某個頁面插入了一段js代碼,但是瀏覽器一刷新,這段代碼就消失了。怎麼讓插入的js代碼始終有

不過要注意幾點:
1、這個代碼是否可以執行,要看瀏覽器的安全設置,不是所有的JS都可以執行的
2、地址欄輸入的長度限制,即URI的長度限制只能輸入4096個位元組,當然瀏覽器的地址欄可能會比這個更短

9. 在頁面js 中,怎麼將中文字元串轉換成2個位元組長度16進制數;並在js 環境下解碼16進

要要要要要

閱讀全文

與js限制輸入位元組長度相關的資料

熱點內容
網路中常用的傳輸介質 瀏覽:518
文件如何使用 瀏覽:322
同步推密碼找回 瀏覽:865
樂高怎麼才能用電腦編程序 瀏覽:65
本機qq文件為什麼找不到 瀏覽:264
安卓qq空間免升級 瀏覽:490
linux如何刪除模塊驅動程序 瀏覽:193
at89c51c程序 瀏覽:329
怎麼創建word大綱文件 瀏覽:622
裊裊朗誦文件生成器 瀏覽:626
1054件文件是多少gb 瀏覽:371
高州禁養區內能養豬多少頭的文件 瀏覽:927
win8ico文件 瀏覽:949
仁和數控怎麼編程 瀏覽:381
項目文件夾圖片 瀏覽:87
怎麼在東芝電視安裝app 瀏覽:954
plc顯示數字怎麼編程 瀏覽:439
如何辨別假網站 瀏覽:711
寬頻用別人的賬號密碼 瀏覽:556
新app如何佔有市場 瀏覽:42

友情鏈接