Check for Bakcspace or Delete Key



我正在玩一个文本区域并试图使它使用户不能超过maxLength,除非按下的键是退格键或删除键。问题是我的keyCode条件总是为真。为什么?

var maxLength = 500;
window.onload = init;                // this seems to be a problem
commentBox.onkeydown = checkLength;
function checkLength(e)
{
    var evt = e || window.event;
    if(countText() < maxLength) //countText successfully returns number of nonwhitespace text.
        return true;
    else if(evt.keyCode == 46 || evt.keycode == 8)  // 46 = delete, 8 = backspace.
        return true;
    else
        return false;
}

这里有一个JSFiddle,以帮助更好地理解。删除键在 JSFiddle 中有效,但由于某种原因不能在本地工作。另一方面,删除仍然不起作用。

终于找到了....

您正在使用evt.keycode,这是一个小的拼写错误

 else if(evt.keyCode == 46 || evt.keyCode == 8)  // 46 = delete, 8 = backspace.

干杯

相关内容

  • 没有找到相关文章

最新更新