2016-09-21 4 views
0

그래서 나는 내가 CONSOLE.LOG를하고 배열이 제대로 초기화 가지고 있음을 알 수이새 검도 데이터 소스가 null입니까?

var newArrary = Array(); 
for (var i = 0; i < result.length; i++) { 
    if (result[i].Id != TaskId) { 
     newArrary.push({text:result[i].Name, value:result[i].Id}) 
    } 
} 

같이 정의 된 배열을 가지고있다. enter image description here

는 그때 확인하고 올바르게

enter image description here

를 초기화하는 것을 볼 수 또한 새로운 데이터 소스

var dataSource = new kendo.data.DataSource({ 
     data: newArrary 
    }); 

를 만들고에 갔다 그러나 나는 그것을 설정하려고하면 내 드롭 다운 목록에 Uncaught TypeError: Text.indexOf is not a function

012의 setDataSource 메서드가있는 드롭 다운 목록

그래서 간단한 dataSource.at(1)을 수행하고 '정의되지 않음'을 얻습니다. 내가 여기서 뭘 잘못하고 있는지 확실하지 않아?

UPDATE 추가 더 많은 코드 : 내가 만든 방법

/구성 드롭 I이 (가) setDatasource을

setTask = function (result, taskCodeStartList, taskCodeResultLisr) { 
    var selectedTaskItem = $("#" + taskStartList).data("kendoDropDownList") 
    var selectedFilterTask = $("#" + taskResultLisr).data("kendoDropDownList").value() 
    var newArrary = Array(); 

    for (var i = 0; i < result.length; i++) { 
     if (result[i].Id != selectedFilterTaskId) { 
      newArrary.push({text:result[i].Name, value:result[i].Id}) 
     } 
    } 

    var dataSource = new kendo.data.DataSource({ 
     data: newArrary 
    }); 

    selectedTaskCodeItem.setDataSource(dataSource); 
    return selectedTaskCodeItem; 
}; 
+0

DropDownList 구성과 'setDataSource'를 사용하는 방법과 위치를 제공하십시오. 더미'result'를 가진 완전한 예제가 가장 유용 할 것입니다. – dimodi

+0

@dimodi 나는 Kendo MVC를 사용하고 있으므로 실제로 예제를 만들 수는 없지만 더 많은 코드를 게시 할 수 있습니다. –

답변

0

dataTextFielddataValueField 설정을 사용하고

@(Html.Kendo().DropDownListFor(m => m) 
       .BindTo(list) 
       .DataTextField("Text") 
       .DataValueField("Value") 
       .HtmlAttributes(attributes) 
       .OptionLabel(string.IsNullOrEmpty(label) ? (required && @dropDownList.Value != "0" && @dropDownList.Value != "" ? "" : " ") : label) 
       .Value(@dropDownList.Value) 
       .TemplateId("myTemplate") 
       .ValueTemplateId("dmyTemplate") 
     ) 

어떻게 아래로 대문자 ("Text", "Value")이지만 newArrary 항목에는 소문자 (text, value) 필드가 있습니다. 일치해야합니다. 그렇지 않으면 위젯이 새 데이터를 처리 할 수 ​​없습니다.

http://dojo.telerik.com/OQOle

나는 그래서 간단한 dataSource.at을했던

에 대해 확실하지 않다 (1) '정의되지 않은'얻을.

부분. 다른 모든 부분은 정상적으로 보입니다.