0
function ProductViewModel()
{
var self = this;

self.Amount= ko.observable(0);

self.Quantity= ko.observable(0);
}

ko.extenders.numeric = function(target, precision) {
var result = ko.computed({
    read: target,  
    write: function(newValue) {
      var value = parseFloat(newValue,10);
      if(precision > 0){
        target(value.toFixed(precision));
      }
      else{
        target(Math.round(value));
      }
    }
});

result(target());

return result;
};

ko.applyBindings(new ProductViewModel());

宣言時ではなく、オブザーバブルが作成された後にエクステンダーを動的に追加したいですか?また、サーバーからデータをフェッチし、ko.mapping.fromJS(data) を使用して観察可能に変換します。その後、エクステンダーを追加したいので、ガイドしてください....

4

1 に答える 1

0

定義したエクステンダが機能しないことが問題ですか? への電話に出られないようですko.validation.registerExtenders();

applyBindings を呼び出す直前に上記の行を追加します。

于 2013-06-05T21:29:30.267 に答える