2012-03-15 49 views
5

嘿所以我想有一個過濾器搜索,這樣你輸入一個搜索的兩個字母,相應的結果出現在列表視圖。我無法像jqm listview那樣加載整個列表,因爲它的方式太大了。有人可以告訴我如何做到這一點......它超出了我對API的理解範圍。jQuery Mobile:ListView過濾器搜索回調函數

我知道如何使用jQuery的自動填充小部件,但我想要格式化爲列表視圖的結果。因此,一個文本框,然後在它下面的列表視圖格式化的結果,但只有兩個字母已輸入後,我喜歡它顯示結果,這樣它不會顯示一個巨大的列表,這將需要太長的時間加載。

回答

0

我會假設你調用返回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() { 

     } 
    }); 
    } 
});