【问题标题】:Kendo : The attr binding is not supported by the DropDownList widgetKendo:DropDownList 小部件不支持 attr 绑定
【发布时间】:2014-12-15 16:15:23
【问题描述】:

我正在尝试升级我的剑道移动应用程序。当我尝试使用最新的 kendo-core javascript 库时,它返回“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>

javascript部分是

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

更改了哪些功能以及如何更正我的代码?

【问题讨论】:

    标签: data-binding kendo-ui kendo-mobile


    【解决方案1】:

    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);
    

    【讨论】:

      猜你喜欢
      • 2014-09-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多