如何仅在输入框中输入文本但未删除文本时才触发事件?

时间:2014-05-12 07:14:29

标签: javascript jquery

以下代码段会在将数字输入(或删除)到9 * 9数独网格中时触发警报事件。

   $('table tr td input').on({"input": function () {
            var cell = $(this).val();

            if (!$.isNumeric(cell)) {
                alert("Please enter only numbers from 1 to 9");
            }

   }});

但是如何在删除文本时删除警告消息?只有在输入数字时才必须触发它。

2 个答案:

答案 0 :(得分:0)

更改

if (!$.isNumeric(cell)) {

if (cell && !$.isNumeric(cell)) {

答案 1 :(得分:0)

我会做以下事情。

$('table tr td input').on({"input": function () {
        var cell = $(this).val();

        if (cell.length > 0 && !$.isNumeric(cell)) {
            alert("Please enter only numbers from 1 to 9");
        }
}});