2013-12-17 57 views
-1

我正在使用此功能來限制textarea中的字符。適用於所有瀏覽器減去IE10(拒絕測試任何更低)。

此部分$(target).text(num - len);將實際數字放入textarea,而不是限制。

任何人都可以指出一個修復IE10請,即時通訊只是不熟悉微軟產品。謝謝IE 10上的字符限制問題

function countChar(val, target, num){ 
    var len = val.value.length; 
    if (len >= num) { 
      val.value = val.value.substring(0, num); 
      $(target).text(0); 
    }else { 
      $(target).text(num - len); 
    } 

}; 

這裏是我的小提琴:http://jsfiddle.net/nalagg/uFDhZ/

上撥弄IE沒有響應到極限

編輯顛倒順序似乎已經解決了它:

$(target).text(0); 
val.value = val.value.substring(0, num); 
+0

哪個IE版本不起作用? – enyce12

+0

@DamianFrizzi更新了我的問題,IE 10是什麼即時測試 –

+0

他們說IE10在他們的問題我相信。 –

回答

0

我無法用IE測試它,但試試這個:

$('#myTxtArea').on('keyup propertychange', function(){ 
    countChar(this, '#myTxtArea', 10); 
}); 

編輯

我不知道爲什麼它不工作,但我猜事件處理函數不是由IE對某些原因的認可。

如果以下工作適合您,您可以試試嗎?

jsfiddle

$('#myTxtArea').on('keypress', function(e){ 

    e = e || window.event; 

    var tval = $('#myTxtArea').val(), 
     tlength = tval.length, 
     set = 10, 
     remain = parseInt(set - tlength); 

     $('p').text(remain); 

     if (remain <= 0 && e.which !== 0 && e.charCode !== 0) { 
      $('textarea').val((tval).substring(0, tlength - 1)) 
     } 
}); 
+0

沒有改變任何東西 –

+0

@tq我已經更新了我的回答 – enyce12

+0

我想知道如果小提琴在IE上有問題,因爲即時通訊獲得相同的結果,沒有任何改變。將做出一個實際的html/js頁面來測試 –