Readonly NumericTextBox - 禁用显示隐藏输入的click事件

时间:2014-07-08 19:14:31

标签: kendo-ui

我们正在使用Kendo NumericTextBox小部件向用户显示计算值。我们希望显示的值随着视图模型的改变而改变,但我们不希望用户能够编辑该值。

我们尝试过:   - 禁用小部件。这会根据需要禁用用户交互,但不允许视图模型更新值。   - 将窗口小部件设置为只读。这允许更新值,并且不允许用户直接更改值,但是当用户单击它时,窗口小部件的外观会发生变化。

我们正试图找到一种在这两者之间存在某种东西的方法,其中值可以通过编程方式更改,但不能由用户更改。当用户点击小部件时没有明显效果。

enter image description here

这是否可以使用Kendo NumericTextBox?

编辑:问题是通过序列化表单将对viewmodel的更改发送回服务器,并且禁用的输入不会包含在表单序列化中。正如CodingWithSpike所指出的,这不是小部件本身的问题。

2 个答案:

答案 0 :(得分:1)

在viewmodel上设置时,窗口小部件似乎更新正常,并且窗口小部件已禁用。

See this example

<input data-role="numerictextbox"
       data-format="c"
       data-min="0"
       data-max="100"
       data-bind="enabled: isEnabled,
                  value: selectedNumber">

<button type="button" data-bind="click: up">Incrament</button>

...

<script>
    var viewModel = kendo.observable({
        selectedNumber: 0,
        isEnabled: false,
        up: function () { viewModel.set("selectedNumber", viewModel.selectedNumber + 1); }
    });
    kendo.bind($("#example"), viewModel);
</script>

答案 1 :(得分:0)

在向用户呈现页面时禁用窗口小部件 - 当从其他输入重新计算页面时,这仍将显示更新的值。然后在将表单序列化回服务器之前重新启用小部件。