2012-03-15 16 views
5

Hej, więc chcę mieć filtrowanie tak, aby wprowadzić dwie litery wyszukiwania, a odpowiednie wyniki pojawią się w widoku listy. Nie mogę załadować całej listy, jak to jest typowe dla listview jqm, ponieważ jest zbyt duża. Czy ktoś może mi pokazać, jak to zrobić ... to trochę poza moim zrozumieniem API.jQuery Mobile: Widok listy Funkcja wyszukiwania Funkcja oddzwaniania

Wiem, jak korzystać z widgetu autouzupełniania dla jquery, ale chcę, aby wyniki sformatowane jako widok listy. Tak więc pole tekstowe, a następnie pod nim listview sformatowane wyniki, ale dopiero po wprowadzeniu dwóch liter chciałbym, aby wyświetlało wyniki, w ten sposób nie wyświetla gigantycznej listy, której załadowanie zajmie zbyt dużo czasu.

Odpowiedz

0

będę zakładać rozmowa wraca JSON:

$("#txtInput").change(function() { 
    var val = $(this).val(); 
    if (val.length >= 2) 
    { 
     // Do Ajax call 
     $.ajax({ 
     type: "POST", 
     dataType: "json", 
     contentType: "application/json; charset=utf-8", 
     url: '/SomeURL/', 
     data: "{'searchText': '" + val + '}', 
     success: function (data) { 
      $("#divListArea").empty(); 
      var i; 
      for (i = 0; i < data.length; i++) 
      { 
       $("#divListArea").append("<div key=" + data[i].Id + ">" + data[i].SomeProperty + "</div>"); 
      } 
      $("#divListArea div").each(function() { 
       $(this).click(function() [ 
       // Do something 
       var id = $(this).attr('key'); 
       }); 
      }); 
     }, 
     complete: function() { 

     } 
    }); 
    } 
}); 
Powiązane problemy