テキストボックスinputにオンブラ、onkeyup、onchangeイベントを追加します.

1473 ワード

onchangeはテキストボックスの入力ボックスに使う時、明らかな不足があります.イベントは文字の入力によって触発されません.テキストボックスがフォーカスを失う時に触発されます.つまりインスタント性がありません.かつ、値が変化してからトリガする必要があります.
onblurとonchangeは基本的に同じです.唯一の違いは値の変化に関係なく、触発されます.
onkeyupは入力枠の内容が変化すればトリガできますが、コピー貼り付けは検出できません.
付帯方法は、テキストの内容の長さが限度を超えているかどうかを判断します.
function lengthResult(){
	 var title = $("#id1").val();
	 var namelength = getByteLen(title);
	 if(namelength<10 ){
		$("#id2").html('
'); }else{ $("#id2").html(''); } if(namelength>72){ // $("#id2").html('
'); var value = $("#id1").val(); var chars = ""; var len = 0; for (var i = 0; i < value.length; i++) { var a = value.charAt(i); if (a.match(/[^\x00-\xff]/ig) != null) { len += 2; } else { len += 1; } if(len>72){ $("#id1").val(chars); break; }else{ } chars+=a; } } }
//判断文字列長、漢字2、数字1
function getByteLen(val) {
    var len = 0;
    for (var i = 0; i < val.length; i++) {
         var a = val.charAt(i);
         if (a.match(/[^\x00-\xff]/ig) != null) 
        {
            len += 2;
        }
        else
        {
            len += 1;
        }
    }
    return len;
}