2017-02-18 6 views
0
Uncaught ReferenceError: Unable to process binding "value: function(){return sumValBinding }" Message: sumValBinding is not defined 

Вот мой HTML:Когда я выполняю следующий код, он дает мне ошибку выше?

<div class="form-group"> 
       <label for="inputdefault">First number</label> 
       <input class="form-control" id="Textbox1" type="text"> 
      </div> 
      <div class="form-group"> 
       <label for="inputdefault">Second number</label> 
       <input class="form-control" id="Textbox2" type="text"> 
      </div> 
      <div class="form-group"> 
       <label for="inputdefault">Answer</label> 
       <input class="form-control" id="TextboxSum" type="number" data-bind="value:sumValBinding"> 
      </div> 
      <button type="button" class="btn btn-default" id="submit">Submit</button> 

================================== =========================================== Здесь Javascript/Knockout JS enter code here

$("#submit").click(function (e) { 
     debugger; 
     number1 = parseInt(document.getElementById("Textbox1").value); 
     number2 = parseInt(document.getElementById("Textbox2").value); 
     sumOfTwoNumber = number1 + number2; 
     console.log(parseInt(number2)); 
     //v = new viewModel(); 
     ko.applyBindings(new viewModel(), document.getElementById("TextboxSum")); 
    }); 
    var viewModel = function() 
    { 
     sumValBinding: ko.observable(sumOfTwoNumber) // Prepopulate 
     }; 

ответ

0

Ваше мнение модель является функцией конструктора, следовательно, вы должны присвоить свойство к этому, если вы хотите, чтобы иметь его в экземпляр объекта:

var viewModel = function() { 
    this.sumValBinding = ko.observable(sumOfTwoNumber); 
}; 

или ваш конструктор может возвращать объект:

var viewModel = function() { 
    return { 
     sumValBinding: ko.observable(sumOfTwoNumber); 
    }; 
}; 
+0

Спасибо. Работает. –

 Смежные вопросы

  • Нет связанных вопросов^_^