如何刷新值剑道数字文本框?

Posted

技术标签:

【中文标题】如何刷新值剑道数字文本框?【英文标题】:How can I refresh value kendo numerictextbox? 【发布时间】:2013-01-05 23:46:19 【问题描述】:

我有一个 kendoNumericTextBox。我有设置与 kendoNumericTextBox 关联的输入元素的值的代码。例如代码调用:

$('#myId').val('test');

不幸的是,剑道数字文本框不会自动反映该值。如何告诉 kendoNumericTextBox 更新其值?我知道 kendoNumericTextBox 上有一个方法如下:

$('#myId').data('kendoNumericTextBox').value('test');

但是,我填充了许多字段,但不确定哪些字段会是 kendoNumericTextBox 字段。因此,我更喜欢调用类似于我对所选插件所做的事情来根据底层组件刷新值。例如,使用选择的插件,我可以调用:

$('.chosen').trigger('liszt:updated');

根据底层选择组件的值更新所有值。

【问题讨论】:

您使用远程数据吗?我们需要更多信息来帮助您 任何答案都回答了您的问题吗? @James 这些答案对你有用吗?我知道那是很久以前的事了,但我只是在浏览我的 SO 问题和答案以清理任何东西。 【参考方案1】:
var numerictextbox = $("#paymentAmount_" + id).data("kendoNumericTextBox");
    numerictextbox.value("0.00");

这对我有用。将元素存储在变量中并使用双引号设置值。此外,我无法在 numericTextBox 中输入“test”之类的词...我假设您的意思是作为测试数据。但这也应该对你有用。

【讨论】:

【参考方案2】:

我在做同样的事情时遇到了麻烦,但是我在没有引号的情况下让它工作...... 我只能说它现在似乎有效....

 calCalories: function (e) 

        var totalCals = 0;
        totalCals = totalCals + ($("#Carbs").val() * 4);
        totalCals = totalCals + ($("#Protein").val() * 4);
        totalCals = totalCals + ($("#Fat").val() * 9);

        var numerictextbox = $("#Calories").data("kendoNumericTextBox");
        numerictextbox.value(totalCals);
    ,

注意: 显然可以使用下面的代码行从事件中获取值

e.sender.value()

【讨论】:

【参考方案3】:

只需触发剑道数字文本框的更改事件

$('#myId').data('kendoNumericTextBox').trigger('change');

【讨论】:

以上是关于如何刷新值剑道数字文本框?的主要内容,如果未能解决你的问题,请参考以下文章

格式化剑道数字文本框

下拉列表中的剑道文本框

如何用Jquery获取到文本框的值然后局部刷新

选择后如何重置剑道自动完成中的文本

刷新剑道网格,选择框

VB文本框怎样限制只能输入数字值