2014-10-31 60 views
0

已經在網格模板與劍道組合框:劍道()組合框()在模板 - 如何設置的SelectedIndex

<script id="templateSample" type="text/kendo-tmpl"> 

    @*Active holds the selected value*@ 
    # alert(Active) # // 

    @(Html.Kendo().ComboBox() 
     .Name("ComboBoxSample") 
     .BindTo(new List<SelectListItem>() 
     { 
      new SelectListItem() 
      { 
       Value = "true", 
       Text = "Yes", 
       Selected = false, 
      }, 
      new SelectListItem() 
      { 
       Value = "false", 
       Text = "No", 
       Selected = false, 
      } 
     }) 
     .DataTextField("Text") 
     .DataValueField("Value") 
     .SelectedIndex(1) 
     .ToClientTemplate() 
    ) 
    </script> 

每當行擴大顯示模板(見http://demos.telerik.com/aspnet-mvc/grid/hierarchy)。

我無法弄清楚如何設置選擇指數與當前選定的項目。

要設置選中的項目,我可以選擇使用SelectListItem.Selected或Combobox.SelectedItem,但如何設定從當前顯示在模板中的項的值Δα

謝謝。

回答

0

我已經找到一種方法使用JavaScript來解決這個問題。

事件添加到網格:

.Events(e=>e.DetailInit("aftertemplateload")) 

和腳本:

function aftertemplateload(e) { 
     $("#ComboBoxSample" + e.data.Id).data("kendoComboBox").value(e.data.Active); 
    } 

,並記住新的ID添加到組合框:

 @(Html.Kendo().ComboBox() 
     .Name("ComboBoxSample#=Id#") 
     .BindTo(new List<SelectListItem>() 
     { etc...