自动完成的JQUERY验证

时间:2011-04-15 21:36:24

标签: jquery autocomplete

当有人开始输入项目编号时,我有一个文本框正在自动完成。这工作正常,但现在我想验证,如果他们只输入一个数字,不要从列表中选择一个验证它是一个工作。这是我自动完成的代码,文本框的id是projectnum。

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

    });

3 个答案:

答案 0 :(得分:2)

您可以使用remote属性。这将检查文本框的表单和onblur的提交,以验证作业是否有效。

http://docs.jquery.com/Plugins/Validation/Methods/remote

$("#yourForm").validate({
  rules: {
    projectnum: {
      required: true,
      remote: "job_validate.php"
    }
  }
});

答案 1 :(得分:1)

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

http://jqueryui.com/demos/autocomplete/#combobox

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

答案 2 :(得分:0)

这不会只允许数字,左,右:

        $("#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
        });

取自http://snipt.net/GerryEng/jquery-making-textfield-only-accept-numeric-values