javascript - 如何从 Kendo View 模型获取 DOM 元素?

标签 javascript kendo-ui kendo-mvvm

我想知道是否可以从剑道 mvvm 中获取 DOM 元素。

我的输入定义如下:

<input id="myInput" type="text" data-bind="value: model.Name" />

有时我会在 javascript 中设置值,例如:

myViewModel.set("model.Name", "John Doe");

这会自动设置绑定(bind)元素内的值,但设置该值后我想更改刚刚更新的 DOM 元素上的某些内容。喜欢:

myViewModel.getElement("model.Name").className = "MyClass;

剑道好像没有那种功能。 kendoBindingTarget

可能会出现相反的情况

最佳答案

我最终使用了 custom binding在刷新的位置(这是集合)我可以访问该元素:

html

<input id="myInput" type="text" data-bind="customValue: model.Name" />

js

kendo.data.binders.customValue= kendo.data.Binder.extend({
    init: function(element, bindings, options) {
        kendo.data.Binder.fn.init.call(this, element, bindings, options);

        var that = this;
        $(that.element).on("change", function() {
            that.change();
        });
    },
    refresh: function() {
        var that = this,
            value = that.bindings["customValue"].get();

        $(that.element).val(value).addClass('MyClass'); //<======that.element========
    },
    change: function() {
        var value = this.element.value;
        this.bindings["customValue"].set(value);
    }
});

关于javascript - 如何从 Kendo View 模型获取 DOM 元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32189134/

相关文章:

javascript - 我如何检测函数何时作为 jQuery 回调调用与直接调用?

javascript - 引用已被追加()到内容中的 div(通过 id)

kendo-ui - 剑道网格 : How display List<string> in one cell?

rest - 如何使用像 '/update/:id' 这样的 URL 作为 KendoUI 数据源?

javascript - kendo ui - 数据列模板函数在网格中未定义

kendo-ui - 如何在 kendo.data.Datasource 上获取单个结果

javascript - Chrome 书签中的递归与回调函数

javascript - 如何修复 Javascript 中的 "Undefined is not an object"错误

javascript - 如何隐藏 Kendo UI Scheduler 小部件上时间线月份 View 的时间标题?

javascript - 如何限制用户输入剑道过滤器输入?