2014-08-31 94 views
0

这可能是淘汰赛结合的最简单的形式之一,淘汰赛简单的绑定问题

无法找出什么是这里的问题:

小提琴

http://jsfiddle.net/qfntcfn8/

  <input data-bind="text:newGroupName" type="text" /> 
      <button class="btn" type=button data-bind="click: addGroup()"> 
       Add Group 
      </button> 

ViewModel:

var vm = $(function() { 
     function baseViewModel() { 
      var self = this; 
      self.newGroupName = ko.observable(); 
      self.addGroup = function() { 
       console.log(ko.toJSON(self.newGroupName)); // Expected newGroupName entered data 
      }; 
     } 
     var viewModel = new baseViewModel(); 
     ko.mapping.fromJS(viewModel); 
     ko.applyBindings(viewModel, document.getElementById("Box")); 
    }); 

我希望在点击后获得newGroupName绑定文本作为字符串。

回答

2

当绑定的输入值,你需要使用value绑定处理程序:

<input data-bind="value: newGroupName" type="text" /> 

而且,由于newGroupName是可观察到的功能,你需要调用它来获得它的值:

console.log(self.newGroupName()) 
+0

正确,忘记绑定价值,为了快走,我从某个地方复制,然后绑定到文本,所以我不允许我在开始时标记为答案,我应该等待2分钟,谢谢+1 – LastBye 2014-08-31 09:10:03