2014-03-13 62 views
0

我使用Laravel表單字段運行jQuery自動完成。使用jQuery自動完成的Laravel驗證

它從我的數據庫抓取數據

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實現這一點。

回答

0

您可以執行以下操作使用Jquery的自動完成:

  1. 您必須使用的HTML代碼自動完成
  2. 不要阿賈克斯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)); 
        } 
    }); 
    

其中「數據」是包含在字符串格式值的列表的陣列。 您可以使用從AJAX post 獲得的響應將數據推送到該數據庫中,並且該數據將用作Suorce。

使用此鏈接爲您更好的參考:: http://jsfiddle.net/rjha999/2QRML/1/

爲了得到上鍵入最小長度的字符串自動完成VALU甲肝看看這個:: http://jsfiddle.net/rjha999/2QRML/2/

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

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