輸入框文字限制字數,用微軟輸入法內容會被清空

描述

在項目開發中碰見的坑,若是有人碰見更好的解決方案,望告知。。。bash

緣由

輸入框字數限制,用微軟輸入法輸入達到限制字數時內容會被清空。異步

解決方案

在判斷輸入框字數大於限制時,失去焦點,進行截取字數,完成賦值後再獲取焦點ui

因爲賦值是異步操做在進行獲取焦點的時候獲取焦點優先執行了,這時候沒有完美解決問題,這裏我用定時器定了0.2s.spa

代碼示例

document.getElementById("sms_content").blur();
    message.value = message.value.substring(0,max);
    setTimeout(function(){
     document.getElementById("sms_content").focus();
    },200)
複製代碼

其餘

若是項目中是須要用alert提示的話就不須要用定時器了,由於alert自己有阻止異步的功能。code

相關文章
相關標籤/搜索