javascript - 设置文本/Val 在单击/聚焦之前不出现在文本输入中 (jQuery)

标签 javascript jquery input textbox telerik-mvc

我有一个复选框,它根据选中或未选中来更新页面上的总数。在我的表单的一部分,如果用户决定不需要该类别,我想将 Telerik 数字文本框(文本输入字段)清零。

When unchecked, the textbox on the right should be set to zero.

当取消选中上述复选框时,右侧文本框中的值应变回零。为此,我在下面编写了 jQuery 代码(请注意,每当表单发生变化时都会调用此函数):

var zeroValue = getNum(0.00);

//Scaffolding
    if ($("#ScaffoldingRequired").attr('checked')) {
        scaffoldingCost = getNum($("#ScaffoldingCost").val());
        totalCost += scaffoldingCost;
    } else {
        $("#ScaffoldingCost").val(zeroValue);
        $("#ScaffoldingCost").text(zeroValue);
    }
//Round&Convert to 'decimal'
function getNum(num) {
        var number = parseFloat(num) || 0.00;
        var rNumber = Math.round(number * 100) / 100;
        return rNumber.toFixed(2) * 1;
    }

注意:为了确保一切都正确舍入并且不给我 NaN,我使用了我的 getNum 函数(我知道它有点 hack)。

此代码有效,并且我所有的总计都正确计算但在用户实际点击输入框之前,文本框不显示零值。我在下面显示了这个:

Displays Zero once the input box is clicked.

有什么办法可以回收我的输入框,使其立即显示零值吗?还是我设置的值/文本完全错误?

最佳答案

您说您正在使用 Telerik,您是否考虑过使用他们的客户端 API 来更改文本框的值?

var textBox = $('#ScaffoldingCost').data('tTextBox');
textBox.value(0);

关于javascript - 设置文本/Val 在单击/聚焦之前不出现在文本输入中 (jQuery),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7692051/

相关文章:

javascript - 在 Angular js Controller 中调用外部 js 文件函数

javascript - 防止qtip2中的默认点击事件

javascript - 如何使用 Razor 语法在剑道网格列模板中调用 javascript 函数

jquery - 如何在 jQuery 中撤消 event.stopPropagation?

jquery - 使用 jQuery 切换功能时 IE10 中隐藏 div 'smears' 的边框半径

java - Java 在从文件中读回对象和数据时如何知道它们的类型

javascript - jQuery 从 $("input") 数组获取输入 val()

javascript - 为什么 openshift 上的 nodejs 简单计数器计数两次​​?

jquery - 通过 jQuery 获取 CSS 变量的值

javascript - 如何使用 jQuery 移动 <input> 元素?