0

在我的应用程序中,在一个文本框中,我有以下代码删除键退格键上的字符并删除

if (e.which == 8 || e.which == 46)  {
    var currentIndex = getCaret($(this).get(0))
    alert(currentIndex);

}

currentIndex 给了我在文本框中输入的字符总数,如果我输入 alert(currentIndex); 当我使用 currentIndex 的退格警报并单击警报的 OK 时,它会删除文本框中的一个字符。 如果我删除警报 alert(currentIndex); ,它不会删除退格键上的任何字符

请建议

添加getCaret函数代码

function getCaret(el) {
    if (el.selectionEnd) {
        return el.selectionEnd;
    } else if (document.selection) {
        el.focus();

        var r = document.selection.createRange();
        if (r == null) {
            return 0;
        }

        var re = el.createTextRange(), rc = re.duplicate();
        re.moveToBookmark(r.getBookmark());
        rc.setEndPoint('EndToStart', re);
        return rc.text.length;
    }
    return 0;
}
4

0 回答 0