2016-10-31 6 views
0

У меня есть следующий HTML-код/​​бритва в моем HTML-файл для заполнения имен групп и числовое текстовое поле для каждой группы в виде таблицы:Как получить значение от kendo numerictextbox?

<div id="minStaffingSettings" style="width: 400px;"> 
      <fieldset> 
       <legend>Minimum Staffing</legend> 
       <div> 
        <table> 
         @for (int i = 0; i < Model.AvailableUserGroups.ToList().Count; i++) 
         { 
          <tr id="[email protected]"> 
           <td> 
            <label>@Model.AvailableUserGroups.ToList()[i].Name</label> 
            @Html.HiddenFor(model => model.AvailableUserGroups.ToList()[i].Name) 
           </td> 
           <td></td> 
           <td> 
            @(Html.Kendo().NumericTextBoxFor(model => model.AvailableUserGroups.ToList()[i].StaffingMinimum) 
           .Min(0) 
           .Step(1) 
           .Format("#0.00") 
           .Decimals(0) 
           .Events(e => e.Change("UpdateStaffingMinimums"))) 

           </td> 
           <td><label> (0 = No minimum) </label></td> 
          </tr> 
         } 
        </table> 
       </div> 
      </fieldset> 
     </div> 

от метода UpdateStaffingMinimums Я пытаюсь вытащить значения из каждого numerictextbox что было создано:

function UpdateStaffingMinimums() 
{ 

    var assignmentTypeID = @Model.AssignmentTypeID; 
    var groupCount = @Model.AvailableUserGroups.Count(); 
    var sumHour = 0; 
    if ($("#HasMinimumStaffing").is(':checked')) 
    { 

     for (var i = 0; i < groupCount; i++) 
     { 
      var it = $("#updateStaffing_"+i);//.data("kendoNumericTextBox").value(); 
      console.log(it); 

     } 


    } 
} 

Я получаю вывод в журнале консоли, как ожидалось; но когда я changeto:

var it = $("#updateStaffing_"+i).data("kendoNumericTextBox").value(); 

Я получаю эту ошибку:

Uncaught TypeError: Cannot read property 'value' of undefined 

Как вытащить значение из числового текстового поля?

+0

Вы должны вызвать '.data (" kendoNumericTextBox ")' непосредственно в элементе textbox, а не в строке, в которой он находится. –

+0

Как получить ссылку на элемент из строки? Я полный новичок с JQuery -_- – user5120455

+1

Я забыл большую часть специфики Kendo (вы должны быть в состоянии найти их в своей документации), но что-то вроде '$ (" # updateStaffing _ "+ i) .find ('.k-numerictextbox') 'похоже, что он должен работать. –

ответ

0

Я просто столкнулся с аналогичной проблемой получения значения цифрового кода Kendo. Я решил проблему, просто используя метод jQuery .val(). В вашем случае это будет:

var it = $("#updateStaffing_"+i).val(); 

Надеюсь, это поможет.