Knockoutjs 将输入文本视为数字

Knockoutjs treats input text as number

我正在使用地图插件。我有一个客户数据列表。其中一个属性是百分比数量 (int)。但是,当我更新文本框的值时,新百分比 属性 显示为字符串。如何使映射插件将百分比 属性 更新为 int.

谢谢

您可以将该字段公开为可写的计算值:

var Model = function() {
  var self = this;
  self.percentProp = ko.observable();
  self.percentPropComputed = ko.computed({
    read: function() {
      return self.percentProp();
    },
    write: function(newValue) {
      if( !isNaN(newValue) ) {
        self.percentProp(parseInt(newValue));
      }
  });
};

html:

<input type="number" data-bind="value: percentPropComputed" />