亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

當前輸入框輸入不正確,光標無論如何都不會跳轉并alert警告,如果輸入正確光標自動跳轉到下一輸入框!

當前輸入框輸入不正確,光標無論如何都不會跳轉并alert警告,如果輸入正確光標自動跳轉到下一輸入框!

holdtom 2023-04-08 18:14:30
請大家先耐心聽我講完這個問題,比較糾結:現在有一個這樣的功能實現,頁面有一組輸入框,每完成一個輸入后,光標會自動定位到下一輸入框,這個功能我是用onkeyup事件來實現,就是判斷輸入長度是否滿足,如果滿足光標就向下一個跳轉。但是在這個跳轉前要先對這個輸入框的內容作check,如果非法輸入,將會彈出alert警告并保留原來光標位置。以上功能我都能用一個onkeyup事件來實現。除此之外還有一個功能實現,就是如果輸入框輸入非法觸發完onkeyup事件光標保留當前輸入框后,若此時用鼠標點擊其他地方時還要彈出警告alert提示輸入不正確,這個功能我是用onblur實現的,以上這兩個功能我都能單獨實現,可是放在一起這光標就不好控制了,求js達人幫忙啊。其實最后就是為了實現"當前輸入框輸入不正確,光標無論如何都不會跳轉并alert警告(包括鼠標點擊其他地方),如果輸入正確光標自動跳轉到下一輸入框?。⑦@功能,萬分感謝!
查看完整描述

1 回答

?
心有法竹

TA貢獻1866條經驗 獲得超5個贊

你可以用如下的思路

  1. setInterval來代替onkeyup做異步檢查

  2. onblur以后如果檢查不合格,強行focus原來的input

這是偽代碼

function check() {
    // 執行檢查代碼
}

setInterval(function () {    if (check()) {
        // go to next input
    }
}, 100);input.onblur = function () {    if (!check()) {        input.focus();
        alert('error');
    }
};


查看完整回答
反對 回復 2023-04-11
  • 1 回答
  • 0 關注
  • 176 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號