从淘汰观察中移除最后一个角色

时间:2016-05-03 14:59:42

标签: knockout.js

我有一个可观察的......

this.mytextbox=ko.observable("Daily");

我希望删除按下按钮的最后一个字符。

我尝试了以下内容 -

this.removesinglechar=function(){
               self.mytextbox().substring(0, self.mytextbox().length - 1);
          } 

以及self.mytextbox().slice(0, -1);

真心感谢任何帮助。

由于

1 个答案:

答案 0 :(得分:3)

你的方法很有效,但你忘了实际设置可观察性。 (使用self.mytextbox(theCodeThatReturnsTheNewString)



var VM = function() {
  var self = this;
  
  this.label = ko.observable("A long string");
  this.removeLastChar = function() {
    self.label(self.label().slice(0, self.label().length - 1));
  };
};

ko.applyBindings(new VM());

<script src="https://cdnjs.cloudflare.com/ajax/libs/knockout/3.2.0/knockout-min.js"></script>


<div>
  <span data-bind="text: label"></span><button data-bind="click:removeLastChar">-1</button>
</div>
&#13;
&#13;
&#13;