使用jQuery自动完成功能进行Laravel验证

时间:2014-03-13 04:14:46

标签: jquery autocomplete laravel-4

我正在使用Laravel表单字段运行jQuery Autocomplete。

它从我的数据库中获取数据

Specialty Area Examples: Real Estate, Mortgage Lenders, Renovation, Buyer's Agent, Listing Agent, Relocation, Short-Sale, Consulting, Local Experts, Refinancing, Architecture, Home Building, Carpentry, Electrical, Engineering, Interior Design, Landscaping, Painting, Plumbing, Appraisal, Commercial Property, Insurance, Legal, Conveyancing, 

用户可以输入其中一个示例,自动完成功能将在字段中完成其余部分。

我想限制用户允许在表单字段中输入最多4个特殊区域示例。因此用户可以输入例如:

房地产,卖空,咨询,本地专家

之后,不应允许用户输入更多数据。

我很失落如何用Laravel实现这一目标。

2 个答案:

答案 0 :(得分:0)

您可以执行以下操作以使用Jquery自动填充功能:

  1. 您必须使用自动填充的HTML代码
  2. 执行Ajax POST以从服务器端获取数据。
  3. 您的Jquery代码应该是这样的:

    var data=[ "c++", "java", "php", "coldfusion", "javascript", "asp", "ruby", "python", "c", "scala", "groovy", "haskell", "perl" ];   
    
    $( "#tags" ).autocomplete({
        //source: data
        source: function(request, response) {
            var results = $.ui.autocomplete.filter(data, request.term);
            response(results.slice(0, 2));
        }
    });
    
  4. 其中'数据'是一个包含字符串格式的值列表的数组。 您可以使用AJAX post获得的响应将数据推送到该数据中 这将被用作Suorce。

    使用此链接获取更好的参考资料:: http://jsfiddle.net/rjha999/2QRML/1/

    要获得最小长度字符串类型的自动填充值,请查看:: http://jsfiddle.net/rjha999/2QRML/2/

答案 1 :(得分:0)

$("#txtBox").keypress(function (e) {
    var input = $(this).val() + String.fromCharCode(e.which);
    if (input.split(',').length > 4) {
        e.preventDefault();
    }
});

演示:http://jsfiddle.net/y6eQF/