2012-11-12 33 views
2

基本上我想實現的是我有一個名爲New的按鈕,並且調用了const的dropdownlist。目前,下拉列表從數據庫正確填充。我現在遇到的問題是,當我選擇下拉列表值並單擊新按鈕時,它當前不會選擇所選值。無法獲得下拉列表中選擇的值的值爲kendo下拉列表

//查看

<input id="btnNewOpt" type="button" value="New" style="width:50px"/> 

    @(Html.Kendo().DropDownList() 
      .HtmlAttributes(new { @Style = "font-size:12px; width:255px" }) 
      .Name("const") 
      .DataTextField("OptName") 
      .DataValueField("OptID") 
      .OptionLabel("Select option name") 
      .DataSource(source => 
      { 
       source.Read(read => 
       { 
        read.Action("GetTypeStatus", "Index"); 
       }); 
      }) 

     ) 


    $(document).ready(function() { 

      $('#btnNewOpt').click(function (e) 
      { 
       var dropdownlist = $("#const").data("kendoDropDownList"); 

      } 

     }); 

//controller: 
    public JsonResult GetTypeStatus() 
     { 
      var consumerStatus = new HEntities(); 

      return Json(consumerStatus.vwCStatus.Select(c => new { OptID = c.OptID, OptName = c.OptName, OptiTypeID = c.OptiTypeID }) 
       .OrderBy(c => c.OptName), JsonRequestBehavior.AllowGet); 


     } 

回答

0

加選擇()加上它的工作現在

//創建劍道下拉菜單,並參考其

var mydropdown = $("#const").data("kendoDropDownList").select(); 

// onclick ... get the value from kendo dropdown 
$('#btnNewOpt').click(function (e){ 
var selectedValue = mydropdown.value(); 
} 
+0

這不能正確執行:在mydropdown上找不到.value()。 Bobby_D_的解決方案爲我獲得了正確的價值。 – mayu

4

致電值定義你的劍道下拉在全球範圍內,然後在點擊提手接近選定值()。

// create your kendo dropdown and reference to it 
var mydropdown = $("#const").data("kendoDropDownList"); 

// onclick ... get the value from kendo dropdown 
$('#btnNewOpt').click(function (e){ 
var selectedValue = mydropdown.value(); 
} 
+0

感謝您的回答bobby.but它仍不斷收到值= 1,事件如果選擇下拉列表中的不同值 – Supermode

+0

我不確定爲什麼'var mydropdown'是在處理程序外部定義的。它不一定是。 – mayu

2

嘗試這些選項了。

1)

$(document).ready(function() { 

      $('#btnNewOpt').click(function (e) 
      { 
       var dropdownlist = $("#const").data("kendoDropDownList").value.toString(); 

      } 

     }); 

2)

$(document).ready(function() { 

        $('#btnNewOpt').click(function (e) 
        { 

        var dropdownlist = $("#const").data("kendoDropDownList")[0].form.const.value; 

        } 

       }); 

3)

$(document).ready(function() { 

         $('#btnNewOpt').click(function (e) 
         { 
         var dropdownlist = $("#const").val();    
         } 

        });