如何在kendo ui grid中获取下拉列表的值?

时间:2013-02-25 13:03:42

标签: javascript html5 kendo-ui

我有一个带下拉列表的网格和一个复选框。每当我选中复选框(多选)时,我想获得所选下拉列表的值。我怎么能用kendoui做到这一点。

请帮助我,这是fiddle

我的代码:

<div id="grid"></div>

<input type="button" value="gridSelectedItem" onclick="selectElementContents( document.getElementById('grid') );"
    />

<div>
<input id="dropdownList" runat="server" /></div>
<script type="text/x-kendo-template" id="CheckboxTemplate">
<li unselectable="off" class="k-item nowrap check-item">
    <input type="checkbox" name="#= text #" value="#= value #" class="check-input" #= selected ? "checked" : "" #/>
    <span>#= text #</span>
</li>

3 个答案:

答案 0 :(得分:8)

一边不是 - 您定义的模板不需要包含li元素 - 它会自动为您生成。

要检索与项目相关的模型,您可以使用ddl客户端对象的dataItem方法和选项的索引(这就是您需要修复模板的原因,因为索引将是错误的。)

这是一个神奇的片段:

var ddl = $('#dropdownList').data().kendoDropDownList;
var model = ddl.dataItem($input.closest('.k-item').index());
alert(model.text);

我更新了您的fiddle以查看其实际效果。

答案 1 :(得分:5)

这适合我:

    var selectedId = $(&#39;#MyDropDown&#39;)。data(&#34; kendoDropDownList&#34;)。value();

答案 2 :(得分:0)

  1. 以下代码适用于我的班次剑道下拉:
  2. <div class="form-group">
      <label>Shift</label>
      <div class="input-group">
        @(Html.Kendo().DropDownListFor(t => t.ShiftId)
          .Name("ShiftId")
          .DataTextField("Text")
          .DataValueField("Value")
          .OptionLabel("...Select Shift...")
          .DataSource(source => source.Read(read => read.Action("GetShifts", "AssessmentResult")))
          .HtmlAttributes(new { style = "width:292px", @required = "required" })
        )
      </div>
    </div>
    
    1. 我还点击了点击事件:
    2. <button type="button" id="show">Show</button>  
      
      1. 脚本如下所示,它提醒所选的班次值(注意:我已经对Telerik Kedno论坛做了一些研究)
      2. <script type="text/JavaScript">
          $('#show').click(function(event) {
            var ShiftId = $("#ShiftId").data("kendoDropDownList").value();            
            alert(ShiftId);
        

        }