Вы не показали весь код, поэтому я попытаюсь ответить на это, основываясь на том, что выше. Во-первых, привязка submit просто выполняет функцию при отправке формы и позволяет вам остановить / подтвердить отправку формы.
При отправке запуска ему передается элемент формы dom, ему не передается входное значение, поэтому этот код никогда не сможет работать.
Чтобы распечатать значение ввода, сначала необходимо связать значение ввода со значением в вашей модели.
<input type="text" id="inputWeight" value="" data-bind="value: inputWeight" />
Затем вы можете предупредить значение следующим образом.
var viewModel = function () {
var self = this;
self.inputWeight = ko.observable();
self.printTest = function() {
var valueEntered = self.inputWeight();
if(valueEntered) {
alert("You entered: " + valueEntered);
}
else {
alert("Would you please enter some text?");
}
}
};
Вот рабочая скрипка
К вашему сведению - в вашем исходном коде / разметке были некоторые ошибки, пропущена неправильная разметка точек с запятой, которую я исправил.
Надеюсь, это поможет.