使用Knockout限制按键上的非数字输入

时间:2012-12-14 22:06:05

标签: javascript knockout.js

我想使用knockout(不是特定的jQuery或任何其他jQuery库)来限制输入上的非数字输入(在keypress上)。我有许多数字输入字段,因此解决方案应该很容易应用于其他Knockout observables /输入。

我应该怎么做?

谢谢,

1 个答案:

答案 0 :(得分:0)

在对observable使用subscribe回调之前,我已经完成了这个。此功能概述于http://knockoutjs.com/documentation/observables.html#explicitly_subscribing_to_observables

所以你可以这样做:

var myNonNumericObservable = ko.observable();
myNonNumericObservable.subscribe(function(newValue) {
    var strippedValue = newValue.replace(/\D/g,'');
    if (strippedValue != newValue) {
        myNonNumericObservable(strippedValue);
    }
});