【问题标题】:Kendo Change Event Not Firing剑道更改事件未触发
【发布时间】:2017-06-26 17:55:03
【问题描述】:

我有一个剑道窗口(模态),我用各种元素填充它,以便在我的应用程序中收集“小部件”的不同属性。我有下拉列表、数字文本框、多选等。我已经为所有这些设置了更改事件,例如下面的下拉列表:

@(Html.Kendo().DropDownList()
    .Name("property-edit-" + @WidgetProperty.widget_property)
    .HtmlAttributes(new { @class = "widget-property-value-edit andon-type-" + WidgetProperty.widget_property_type.ToLower(), style = "width:300px; height: 30px" })
    .DataTextField("tag_name")
    .DataValueField("tag_name")
    .Value(WidgetProperty.widget_property_value)
    .DataSource(source =>
    {
        source.Read(read =>
        {
            read.Action("AndonTagList", "List", new { DataType = Model.widget_data_type });
        })
        .ServerFiltering(true);
    })
    .Enable(true)
    .Events(e => { e.Change("propertyChanged('property-edit-" + @WidgetProperty.widget_property + "')"); })

)

所有 Kendo 控件的 Change 事件仅在首次渲染视图并且通过 .Value() 配置属性填充其值时触发。无论我选择新值、编辑文本框还是使用微调器,它们都不会再次触发。

下拉渲染的脚本我觉得不错?

kendo.syncReady(function(){jQuery("#property-edit-Tag-Name").kendoDropDownList({"change":propertyChanged('property-edit-Tag-Name'),"dataSource":{"transport":{"read":{"url":"/List/AndonTagList?DataType=Text","data":function() { return kendo.ui.DropDownList.requestData(jQuery("#property-edit-Tag-Name")); }},"prefix":""},"serverFiltering":true,"filter":[],"schema":{"errors":"Errors"}},"dataTextField":"tag_name","dataValueField":"tag_name"});});

我在同一个视图上有非剑道输入,onchange 事件按预期工作。

控制台中没有错误。

这里是被调用的函数,没什么特别的:

function propertyChanged(PropertyElement)
    {
        console.log("Element: " + PropertyElement);
    }

有什么想法吗?

【问题讨论】:

  • 我应该补充一点,我尝试使用 Cascade 事件,即使我得到的是程序化更改,而不是来自用户交互的更改。

标签: asp.net-mvc kendo-ui kendo-dropdown kendo-colorpicker


【解决方案1】:

我试图将参数传递给处理更改事件的函数。做不到。

我想要的只是调用函数的元素的名称,这样我就可以得到它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-03-01
    • 2013-04-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多