2013-05-13 36 views

回答

5
<p> 
    <label for="categories">Catergories:</label> 

    @(Html.Kendo().DropDownList() 
     .Name("categories") 
     .HtmlAttributes(new { style = "width:300px" }) 
     .OptionLabel("Select category...") 
     .DataTextField("CategoryName") 
     .DataValueField("CategoryId") 
     .DataSource(source => 
     { 
      source.Read(read => 
      { 
       read.Action("GetCascadeCategories", "CoreParam"); 
      }); 
     }) 
     .Events(e =>e.Select("select")) 
    ) 

</p> 
<p> 
    <label for="parameters">Parameters:</label> 

    @(Html.Kendo().MultiSelect() 
     .Name("parameters") 
     .HtmlAttributes(new { style = "width:400px" }) 
     .DataTextField("ParamDesc") 
     .DataValueField("ParamCode") 
     .Placeholder("Select products...") 
     .DataSource(source => 
     { 
      source.Read(read => 
      { 
       read.Action("GetCascadeParams", "CoreParam") 
        .Data("filterParams"); 
      }) 
      .ServerFiltering(true); 
     }) 
     .AutoBind(false) 
    ) 

</p> 

<script type="text/javascript"> 

    function filterParams() { 
     return { 
      categories: $("#categories").val() 
     }; 
    } 

    function select(e) { 
     var dropdownlist = $("#categories").data("kendoDropDownList"); 
     dropdownlist.select(e.item.index()); 
     var multiselect = $("#parameters").data("kendoMultiSelect"); 
     multiselect.dataSource.read(); 
    }; 
</script> 
0

您可以創建一個自定義的MVVM活頁夾,它將獲取下拉列表的文本並設置ViewModel的屬性。該屬性可以綁定到隱藏字段。查看下面的鏈接瞭解更多信息。

+0

http://jsfiddle.net/krustev/5GGVf/ – 2013-05-13 08:44:45

+0

你知道,我只是需要一種方法來觸發,我用它來約束多選數據源委託的閱讀方法。但我不知道我該怎麼做。 – Libertad 2013-05-13 10:14:44