jquery
  • jquery-ui
  • 2014-03-19 69 views 1 likes 
    1

    我用下面的自動完成功能掙扎了一下。有人可以看看我的JqueryUI自動完成代碼,並建議我去哪裏錯了嗎?

    如果我調試MyMethod,我可以看到它正在帶回正確的數據,這似乎是Jquery自動完成的錯誤。處理返回數據的響應部分似乎有問題。

    林不知道響應($.map(data.d, function(item)不正是並且如果它應該是datadata.d

    幫助,將不勝感激。由於

    $(document).ready(function() { 
         $("[id$='_txtStandard']").autocomplete({ 
          source: function(request, response) { 
           $.ajax({ 
            type: "POST", 
            contentType: "application/json; charset=utf-8", 
            url: "MyPage.aspx/MyMethod", 
            data: '{"MyParam":"' + request.term + '"}', 
            dataType: "json", 
            success: function(data) { 
             response($.map(data.d, function(item) { 
              return { 
               ID: item.ID, 
               Value: item.Value 
              }; 
             })); 
            }, 
            error: function(result) { debugger; } 
           }); 
          }, 
          minLength: 1 
         }) 
        }); 
    
    
    public class AutoComplete 
        { 
         public string ID { get; set; } 
         public string Value { get; set; } 
        } 
    
    
    [WebMethod] 
         public static List<AutoComplete> MyMethod(String AccommodationName) 
         { 
    
    return a list.... 
    } 
    

    回答

    0

    嘗試像這樣將CSS Jqueryui.com

    的Jquery:

    $('#textboxid').autocomplete({ 
         source: function (request, response) { 
          $.getJSON("/Controller/textboxid?term=" + request.term, function (data) { 
           response(data); 
          }); 
         }, 
         minLength: 1, 
         delay: 100 
        }); 
    

    JsonResult控制器

    public JsonResult Dimen(string term) 
        { 
         var dat = new DBEntity(); 
         var query = entity.TblTable.Select(s => s.Columnname.ToUpper()).ToList(); 
         var getauto = query.Where(item => !string.IsNullOrEmpty(item) && item.ToUpper().StartsWith(term.ToUpper())).Distinct().ToList(); 
         dat.Dispose(); 
         return Json(getauto, JsonRequestBehavior.AllowGet); 
        } 
    
    相關問題