私が持っている場合:
...
<li>Title: <input id="name" /></li>
<li>Author: <input id="author" /></li>
...
<button data-bind='click: $root.Add'>Add</button>
ボタンにバインドされた関数 ( ) にユーザー入力を渡したいのAdd
ですが、どうすればこれを達成できますか?
値を取得してパラメータとして渡す方法がわかりません。
私が持っている場合:
...
<li>Title: <input id="name" /></li>
<li>Author: <input id="author" /></li>
...
<button data-bind='click: $root.Add'>Add</button>
ボタンにバインドされた関数 ( ) にユーザー入力を渡したいのAdd
ですが、どうすればこれを達成できますか?
値を取得してパラメータとして渡す方法がわかりません。
メソッド呼び出しをバインドして、viewmodel ($root) をメソッドの「this」コンテキストとして使用できます。次に、通常どおりにプロパティにアクセスします。
http://jsfiddle.net/psteele/Wf9xj/
<div>Title: <input id="name" data-bind="value: name" /></div>
<div>Author: <input id="author" data-bind="value: author" />
<input type="button" value="X" data-bind="click: show.bind($root)"></input></div>
var vm = {
name: 'Bob',
author: 'King',
show: function() {
alert(this.name + '-' + this.author);
}
}
ko.applyBindings(vm);