jQuery自动完成如何将此代码与我们的函数集成以进行验证?

时间:2011-10-13 07:47:02

标签: javascript jquery jquery-ui jquery-autocomplete

我在zend项目中使用jQuery自动完成功能。输入显示我们数据库中的类别列表。我刚刚意识到无论用户输入什么,表单仍然会提交。我找了一种验证字段的方法,因此他们只能从数据库/自动完成中选择一个选项。我发现这个代码可以运行

var src = ['hi', 'bye', 'foo', 'bar'];

$("#auto").autocomplete({ 
    source: function(request, response) {
        var results = $.ui.autocomplete.filter(src, request.term);

        if (!results.length) {
            this.element.val('');
        }
        response(results);
    }
});

我的JS看起来像这样,我不知道如何使用上面的代码来验证来自自动完成的变量。感谢任何帮助

$(function() {
    var url = "http://domain.com/account/ajaxautocomplete?format=json";
    $( "#autotest" ).autocomplete({
        source: url,
        minLength: 2
        });
});

1 个答案:

答案 0 :(得分:1)

您可能使用了错误的方法。您可以使用select-tag代替自动完成。然后,用户只能进行有效选择,并且他知道他可以选择什么。 但是如果你想坚持自动完成,你需要独立于自动完成工具检查输入(它不用于验证)。您可以在发送之前检查数据,也可以使用keyup-event-listener检查数据。