JavaScript實現TextArea的MaxLength效果

<!-- /* Font Definitions */ @font-face {font-family:新細明體; panose-1:2 2 3 0 0 0 0 0 0 0; mso-font-alt:PMingLiU; mso-font-charset:136; mso-generic-font-family:roman; mso-font-pitch:variable; mso-font-signature:3 137232384 22 0 1048577 0;} @font-face {font-family:細明體; panose-1:2 2 3 9 0 0 0 0 0 0; mso-font-alt:MingLiU; mso-font-charset:136; mso-generic-font-family:modern; mso-font-pitch:fixed; mso-font-signature:3 137232384 22 0 1048577 0;} @font-face {font-family:標楷體; panose-1:3 0 5 9 0 0 0 0 0 0; mso-font-charset:136; mso-generic-font-family:script; mso-font-pitch:fixed; mso-font-signature:3 137232384 22 0 1048577 0;} @font-face {font-family:"/@標楷體"; panose-1:3 0 5 9 0 0 0 0 0 0; mso-font-charset:136; mso-generic-font-family:script; mso-font-pitch:fixed; mso-font-signature:3 137232384 22 0 1048577 0;} @font-face {font-family:"/@細明體"; panose-1:2 2 3 9 0 0 0 0 0 0; mso-font-charset:136; mso-generic-font-family:modern; mso-font-pitch:fixed; mso-font-signature:3 137232384 22 0 1048577 0;} @font-face {font-family:"/@新細明體"; panose-1:2 2 3 0 0 0 0 0 0 0; mso-font-charset:136; mso-generic-font-family:roman; mso-font-pitch:variable; mso-font-signature:3 137232384 22 0 1048577 0;} /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal {mso-style-parent:""; margin:0cm; margin-bottom:.0001pt; mso-pagination:none; font-size:12.0pt; font-family:"Times New Roman"; mso-fareast-font-family:標楷體; mso-font-kerning:1.0pt;} /* Page Definitions */ @page {mso-page-border-surround-header:no; mso-page-border-surround-footer:no;} @page Section1 {size:612.0pt 792.0pt; margin:72.0pt 90.0pt 72.0pt 90.0pt; mso-header-margin:36.0pt; mso-footer-margin:36.0pt; mso-paper-source:0;} div.Section1 {page:Section1;} -->

< textarea cols ="50" rows ="10" onkeypress ="txtOnKeyPress(10)"

onpaste ="txtOnPaste(10)"></ textarea >


<!-- /* Font Definitions */ @font-face {font-family:新細明體; panose-1:2 2 3 0 0 0 0 0 0 0; mso-font-alt:PMingLiU; mso-font-charset:136; mso-generic-font-family:roman; mso-font-pitch:variable; mso-font-signature:3 137232384 22 0 1048577 0;} @font-face {font-family:細明體; panose-1:2 2 3 9 0 0 0 0 0 0; mso-font-alt:MingLiU; mso-font-charset:136; mso-generic-font-family:modern; mso-font-pitch:fixed; mso-font-signature:3 137232384 22 0 1048577 0;} @font-face {font-family:標楷體; panose-1:3 0 5 9 0 0 0 0 0 0; mso-font-charset:136; mso-generic-font-family:script; mso-font-pitch:fixed; mso-font-signature:3 137232384 22 0 1048577 0;} @font-face {font-family:"/@標楷體"; panose-1:3 0 5 9 0 0 0 0 0 0; mso-font-charset:136; mso-generic-font-family:script; mso-font-pitch:fixed; mso-font-signature:3 137232384 22 0 1048577 0;} @font-face {font-family:"/@細明體"; panose-1:2 2 3 9 0 0 0 0 0 0; mso-font-charset:136; mso-generic-font-family:modern; mso-font-pitch:fixed; mso-font-signature:3 137232384 22 0 1048577 0;} @font-face {font-family:"/@新細明體"; panose-1:2 2 3 0 0 0 0 0 0 0; mso-font-charset:136; mso-generic-font-family:roman; mso-font-pitch:variable; mso-font-signature:3 137232384 22 0 1048577 0;} /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal {mso-style-parent:""; margin:0cm; margin-bottom:.0001pt; mso-pagination:none; font-size:12.0pt; font-family:"Times New Roman"; mso-fareast-font-family:標楷體; mso-font-kerning:1.0pt;} /* Page Definitions */ @page {mso-page-border-surround-header:no; mso-page-border-surround-footer:no;} @page Section1 {size:612.0pt 792.0pt; margin:72.0pt 90.0pt 72.0pt 90.0pt; mso-header-margin:36.0pt; mso-footer-margin:36.0pt; mso-paper-source:0;} div.Section1 {page:Section1;} -->

// 按下鍵盤按鍵時

function txtOnKeyPress(txtlength)

{

    // 判斷按下的鍵是不是迴車( 迴車占兩個字符)

    if (event.keyCode == 13)

    {

        txtlength=txtlength -1;

    }

   

    // event.srcElement.value 已輸入的字符串( 不包含本次輸入)

    // document.selection.createRange().text 處於被選中狀態的文本

    if (event.srcElement.value.length >= txtlength

        && document.selection.createRange().text.length == 0)

    {

        // 阻止輸入

        event.returnValue=false ;

    }

}

 

<!-- /* Font Definitions */ @font-face {font-family:新細明體; panose-1:2 2 3 0 0 0 0 0 0 0; mso-font-alt:PMingLiU; mso-font-charset:136; mso-generic-font-family:roman; mso-font-pitch:variable; mso-font-signature:3 137232384 22 0 1048577 0;} @font-face {font-family:細明體; panose-1:2 2 3 9 0 0 0 0 0 0; mso-font-alt:MingLiU; mso-font-charset:136; mso-generic-font-family:modern; mso-font-pitch:fixed; mso-font-signature:3 137232384 22 0 1048577 0;} @font-face {font-family:標楷體; panose-1:3 0 5 9 0 0 0 0 0 0; mso-font-charset:136; mso-generic-font-family:script; mso-font-pitch:fixed; mso-font-signature:3 137232384 22 0 1048577 0;} @font-face {font-family:"/@標楷體"; panose-1:3 0 5 9 0 0 0 0 0 0; mso-font-charset:136; mso-generic-font-family:script; mso-font-pitch:fixed; mso-font-signature:3 137232384 22 0 1048577 0;} @font-face {font-family:"/@細明體"; panose-1:2 2 3 9 0 0 0 0 0 0; mso-font-charset:136; mso-generic-font-family:modern; mso-font-pitch:fixed; mso-font-signature:3 137232384 22 0 1048577 0;} @font-face {font-family:"/@新細明體"; panose-1:2 2 3 0 0 0 0 0 0 0; mso-font-charset:136; mso-generic-font-family:roman; mso-font-pitch:variable; mso-font-signature:3 137232384 22 0 1048577 0;} /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal {mso-style-parent:""; margin:0cm; margin-bottom:.0001pt; mso-pagination:none; font-size:12.0pt; font-family:"Times New Roman"; mso-fareast-font-family:標楷體; mso-font-kerning:1.0pt;} /* Page Definitions */ @page {mso-page-border-surround-header:no; mso-page-border-surround-footer:no;} @page Section1 {size:612.0pt 792.0pt; margin:72.0pt 90.0pt 72.0pt 90.0pt; mso-header-margin:36.0pt; mso-footer-margin:36.0pt; mso-paper-source:0;} div.Section1 {page:Section1;} -->

// 黏貼時

function txtOnPaste(txtlength)

{

    // 清空文本內被選中的區域

    document.selection.createRange().text = "" ;

 

     // window.clipboardData.getData("Text") 剪貼板內容

    if (window.clipboardData.getData("Text" ).length >=

        txtlength - event.srcElement.value.length)

    {

        // 在文本內被選中的區域添加剪貼板上內容

        document.selection.createRange().text =

            window.clipboardData.getData("Text" ).

            substr(0, txtlength - event.srcElement.value.length);

       

        // 阻止黏貼

        event.returnValue = false ;

    }

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值