2014-12-15 4 views
0

내 검도 모바일 응용 프로그램을 업그레이드하려고합니다. 가장 최근의 검도 코어 자바 스크립트 라이브러리를 사용할 때 "DropDownList 위젯에서 attr 바인딩을 지원하지 않습니다."오류가 반환됩니다.검도 : DropDownList 위젯에서 attr 바인딩을 지원하지 않습니다.

내 내 HTML 코드 내부에 바인딩

<script id="fieldsTemplate" type="text/x-kendo-template"> 
    <li> 
    <label data-bind="attr: { for: COLUMN_NAME}, text: COLUMN_TITLE"></label><span class="targettrash"></span> 
    # if (get("FORM_FIELD_TYPE") == "I") {# 
    <input data-bind="value: VALUE, disabled: DISABLED, attr: { type: DATA_TYPE, name: COLUMN_NAME, id: COLUMN_NAME} ,style: {textTransform:ENTRY_FORMAT}" /> 
    #}else if (get("FORM_FIELD_TYPE") == "T"){# 
    <textarea data-bind="value: VALUE, disabled: DISABLED, attr: { type: DATA_TYPE, name: COLUMN_NAME, id: COLUMN_NAME} ,style: {textTransform:ENTRY_FORMAT}" /> 
    #}else if (get("FORM_FIELD_TYPE") == "L"){# 
    <input data-bind="value: VALUE, disabled: DISABLED, attr: { type: DATA_TYPE, name: COLUMN_NAME, id: COLUMN_NAME}" /> 
    #}else{# 
    <select data-role="dropdownlist" data-bind="value: VALUE, disabled: DISABLED, source: options, attr: { id: COLUMN_NAME" data-text-field="OPTION_DESC" data-value-field="OPTION_ID" /> 
    #}# 

    </li> 
</script> 

처럼 자바 스크립트 부분은 기능이 변경

    $('#' + obsRecordFields.fields[i].COLUMN_NAME).kendoDropDownList({ 
         dataSource : dataSource, 
         dataTextField : "OPTION_DESC ", 
         dataValueField : "OPTION_ID" 
        }); 

어떻게해야 올바른 내 코드?

답변

0

속성 바인딩은 더 이상 DropDownList에서 지원되지 않습니다 (이전에 지원되었습니다).

동적으로 생성 된 양식에서 속성을 정의해야했습니다. 내가 한 것은 양식을 만든 후에 속성을 정의하는 것이 었습니다.

다음 코드는 폼 생성 루프 내에서 잘 작동

   var j = i + 1; 
       var $elem = $("form#recordDetailForm ul > li:nth-child(" + j + ") select[data-role='dropdownlist']"); 
       if ($elem.length==1) { 
        $elem.attr('id',obsRecordFields.fields[i].COLUMN_NAME); 
        $elem.attr('type',obsRecordFields.fields[i].DATA_TYPE); 
        $elem.attr('name',obsRecordFields.fields[i].COLUMN_NAME);