knockout添加绑定到动态表单元素

时间:2012-08-28 02:50:45

标签: javascript jquery knockout.js

enter image description here

我有这个表单,所有这些输入都是整数。 intpu B,C嵌套形式的嵌套形式,当点击添加另一个时,b,c(但不同的id,名称)的克隆将被添加到表单中。

C'value = A'value * B'value / 100

输入bindto underwriting_fee
输入B bindto allocation_percent
输入C ko.computed = A * B / 100

var appmodel = function(){
    var self = this;
    self.underwriting_fee = ko.observable();
    self.lines = ko.observableArray([new line(self.underwriting_fee)]);
    self.addLine = function() { 
      self.lines.push(new line(self.underwriting_fee));
  };
};

var line = function(underwriting_fee){
    var self = this;
    self.underwriting_fee = underwriting_fee;
    self.allocation_percent = ko.observable();

    self.fee = ko.computed(function() {
      //console.log(self.underwriting_fee());
      //console.log(self.allocation_percent());

      if(!isNaN(self.underwriting_fee()) && !isNaN(self.allocation_percent())){
         return self.underwriting_fee() * self.allocation_percent() / 100 ;
      }
    });
};
ko.applyBindings(new appmodel());

目前,当我点击添加另一行时,会有两行b1-c1,一行由knockout ko oberservable数组,一行由rails nested_form gem。并通过嵌套的形式doest工作(输入c未计算),我不想因为相同的id和同名而被淘汰。

我已经阅读了文档并搜索了很多内容,但是没有找到解决方案。

也许我不应该在这里使用knockoutjs?

0 个答案:

没有答案