2016-08-19 5 views
0

Как получить значение kendo combobox? Я всегда получаю неопределенными на нем .. Я использовал эти варианты, но они не работали для меняКак получить значение от kendo combobox

var selected = $('#typesCombo').data('kendoComboBox').val(); 
var selected = $('#typesCombo').data('kendoComboBox').value(); 
var selected = $('#typesCombo').data('kendoComboBox'); 

И получать ошибки вроде: Cannot read property 'val' of undefined

Вот мой код:

JS:

$('#loadContainer').load("@Url.Action("Load", "Home")" + id); 

var selected = $('#typesCombo').data('kendoComboBox').val(); 

if (selected == '') { 
    ... 
    } 

HTML:

@(Html.Kendo().ComboBoxFor(x => x.Types.Name).Name("typesCombo") 
              .DataTextField("Name") 
              .DataValueField("Id") 
              .HtmlAttributes(new { style = "width:100%", id = "typesCombo" }) 
              .BindTo(Model.TypesList)) 

ответ

0

Есть много способов, чтобы получить выбранное значение виджета. Если вы пытаетесь получить значение после инициализации и, у него нет выбранного значения (объявленного в параметре index), вы получите пустое значение. Если вы хотите, чтобы получить значение, когда пользователь изменяет его, вы можете использовать select событие и получить значение, как это:

this.value(); // The selected value itself 
this.dataItem(); // The selected entire dataItem object 
$("#typesCombo").val(); // Only if the target element is an input element 

Working demo

3

Вы забыли использовать # перед идентификатором. Попробуйте следующее:

var selected = $("#typesCombo").data('kendoComboBox').value() 
+0

пропустил, но до сих пор не работает .. – Vitaliy

0
var object= $("#typesCombo").data('kendoComboBox').dataItem() // For getting the selected object 
+2

Can вы уточните, как это устраняет проблему? Что он делает, что вещи, которые ФП пытался уже не делает? – user1118321

Смежные вопросы