自动完成的JQUERY验证

自动完成的JQUERY验证,jquery,autocomplete,Jquery,Autocomplete,我有一个文本框,当用户开始输入项目编号时,它会自动完成。这很好,但现在我想验证一下,如果他们只是键入一个数字,而没有从列表中选择一个,那么它将验证这是一个作业。这是我的自动完成代码,文本框的id是projectnum $( '[name="projectnum"]' ).autocomplete({ source: "job_validate.php", minLength: 3 }); 可以使用“远程”属性。这将在表单提交和文本框模糊时进行检

我有一个文本框,当用户开始输入项目编号时,它会自动完成。这很好,但现在我想验证一下,如果他们只是键入一个数字,而没有从列表中选择一个,那么它将验证这是一个作业。这是我的自动完成代码,文本框的id是projectnum

    $( '[name="projectnum"]' ).autocomplete({
        source: "job_validate.php",
        minLength: 3

    });

可以使用“远程”属性。这将在表单提交和文本框模糊时进行检查,以验证作业是否有效


这只允许数字,左,右:

        $("#field_id").keydown(function (event) {
            if ((event.keyCode >= 48 && event.keyCode <= 57) || (event.keyCode >= 96 && event.keyCode <= 105)) // 0-9 or numpad 0-9
            {
                // check textbox value now and tab over if necessary
            }
            else if (event.keyCode != 8 && event.keyCode != 46 && event.keyCode != 37 && event.keyCode != 39) // not esc, del, left or right
            {
                event.preventDefault();
            }
            // else the key should be handled normally
        });

摘自

如果您使用的是jQuery UI autocomplete,那么您可以使用类似于演示页面上的组合框。它使用自动完成功能,但您只能在列表中选择一个值

这将使用页面的本地源,而不是服务器的ajax调用

        $("#field_id").keydown(function (event) {
            if ((event.keyCode >= 48 && event.keyCode <= 57) || (event.keyCode >= 96 && event.keyCode <= 105)) // 0-9 or numpad 0-9
            {
                // check textbox value now and tab over if necessary
            }
            else if (event.keyCode != 8 && event.keyCode != 46 && event.keyCode != 37 && event.keyCode != 39) // not esc, del, left or right
            {
                event.preventDefault();
            }
            // else the key should be handled normally
        });