2016-08-04 10 views
0

私はASP.NET MVC5を使用しています。今、私はhtmlラッパーを使わずに剣道DropDownlistにビューモデルデータをバインドする方法

@(Html.Kendo().DropDownListFor(m => m.ActiveUserList) 
    .BindTo(Model.ActiveUserList).Name("selectedUser"))) 

:私は次のようにASP.NETラッパーの剣道UIを使用して、剣道のDropDownListのリストをバインドする方法を考え出し

public class IncidentWorkbenchViewModel 
    { 
     public List<string> ActiveUserList { get; set; } 
    } 

:ビューは、コントローラからモデルを取ります私はHTMLヘルパーを使わずに同じことをやり遂げることができますか?私は良いコード分離のためにラッパーの代わりにjavascriptを使用する方が良いと思います。

答えて

2

javascriptのと同等です:

<input id="selectedUser" /> 
<script> 
    var activeUsers= @Html.Raw(Json.Encode(Model.ActiveUserList)); 
    $("#selectedUser").kendoDropDownList({ 
    dataSource: activeUsers, 
    dataTextField: "Name", 
    dataValueField: "Id" 
    }); 
</script> 

http://docs.telerik.com/kendo-ui/api/javascript/ui/dropdownlist

+0

ありがとうございました!私はモデルがjsonオブジェクトに変換される必要があることを知らなかった、笑! – oopsdazie

+0

実際には、私のリストをJSON形式で返すmvcコントローラアクションを指すように、データソースの読み込みを設定することをお勧めします。次に、それらのリストをすべて巨大なビューモデルにロードすることについて心配する必要はありません。 –

+0

ねえ、そうだよ。私は自分のコードを変更するつもりです。あなたのヒントをもう一度ありがとう。 – oopsdazie

関連する問題