2016-07-24 158 views
0

我在ASP.NET MVC Razor視圖中使用DropDownListFor助手,該視圖包含SelectListItems的集合。選定的項目被回傳給控制器。但是,隨着項目列表的增加,助手將變得使用起來很麻煩。我正在考慮使用AutoComplete函數,以便用戶可以開始輸入列表條目,並且建議將填充列表。ASP.NET MVC 5 DropDownListFor自動完成

這裏有examples使用TextBoxes,但DropDown似乎是最好的在這裏工作。

有沒有人有任何想法如何使用jQuery來實現我的目標或有任何其他建議?

+0

有大量的jQuery插件,給你的功能,包括[jQuery自動完成](https://jqueryui.com/autocomplete/#remote) –

回答

1

這對我有用。它使用jquery ui。我必須在網站上添加一個API以獲取下拉列表的值。

$(document).ready(function() { 
     $("#mytextbox").autocomplete({ 
      source: function (req, res) { 
       $.ajax({ 
        url: '/mysite/api/MyController/' + req.term, //+ you can add other filters here, 
        type: "GET", 
        dataType: "json", 
        success: function (data) { 

         res($.map(data, function (item) { 
          return { 
           label: item.MyDisplayLabel, 
           mykey: item.mykey, 
           value: item.myvalue 

          }; 
         })); 
        }, 
        error: function (XMLHttpRequest, textStatus, errorThrown) { 
         alert(mymessage); 
        } 
       }); 
      }, 
      minLength: 3, 
      delay: 500, 
      select: function (event, ui) { 
       $("#myhiddentextboxThatacceptsValueOfDropDownBox").val(ui.item.mykey); 
      } 

     }); 
    }); 
0

我最終最簡單的(不一定是最便宜的)是使用Telerik的客戶控制。

感謝您的回答。