2013-10-17 1 views
1
Below is the kendo code for drop down control. 

"선택하십시오"옵션을 표시하려고합니다. 정확한 코드는이 항목을 제외한 모든 드롭 다운에서 작동합니다. 옵션이 드롭 다운 목록의 일부로 표시되지만 드롭 다운이 먼저로드되지 않는 경우에는 표시되지 않습니다. 또한 비주얼 스튜디오를 닫고 열어 보면서 브라우저의 기록을 삭제하려고도합니다.검도 옵션 드롭 다운의 레이블이 올바르게 작동하지 않습니다.

 function getRC(rcid) { 
    for (var i = 0; i < ddRCpicklist.length; i++) { 
     if (ddRCpicklist[i].rcID === rcid) { 
      return ddRCpicklist[i].RootCause; 
     } 
    } 
    return 'No value matched'; 
} 

function RootCauseDropDownEditor(container, options) { 
    if (options.model.Name !== null) { 
     var ddRC= $('<input id="ddRootCause" required data-text-field="RootCause" data-value-field="rcID" data-change="ddRootCauseSelect" data-bind="value:' + options.field + '"/>') 
         .appendTo(container) 
         .kendoDropDownList({ 
          index:0, 
          autoBind: false, 
          dataSource: { data: ddRCpicklist }, 
          optionLabel: "--Please Select--" 
         }).data("kendoDropDownList"); 
        } 
    } 

function ddRootCauseSelect(e) { 
    ddValRootCause = $("#ddRootCause").val(); 
    alert(ddValRootCause); 
} 
+0

@Mila 어떻게해야할까요, 문제를 해결하는 데 행운이 있습니까? – Vojtiik

답변

0

이 고유 한 동작은 소위 맞춤 편집기라고합니다. 기회가되면 그리드에 드롭 다운됩니까? 기본적으로 사용자가보고있는 코드는 드롭 다운 컨트롤을 그리드의 컨테이너 (예 : .appendTo(container))에 삽입하고 optionValue를 드롭 다운에 추가하지만 그리드에 표시된 값도 선택합니다. 드롭 다운 옵션이 A, B, C 및 -select 인 경우 그리드에 B가 표시되면 드롭 다운에 B가 표시됩니다. 그리드에 있지 않으면 옵션을 통해 선택한 값이 전달됩니다.

제거 속성을 다음 어떻게되는지 :

data-bind="value:' + options.field + '" 
1

optionLabel JSON 데이터가 아래로 드롭에로드 데이터의 나머지 부분과 같은 형식이어야합니다. 그래서 당신을 위해 :

optionLabel: { RootCause: '-- Please Select --', rcID: '' } 
관련 문제