如果我有:如何將幾個輸入值傳遞給綁定函數?
...
<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);
好吧,所以基本上輸入必須也必然真正處理這個。 – Yatrix 2013-04-24 19:59:48
正確。一旦綁定,這變得非常容易。 – PatrickSteele 2013-04-24 20:18:43
這是結合一個foreach約束力的內部發生了什麼? – PatrickSteele 2013-04-24 19:37:16
@PatrickSteele不,它不是。 – Yatrix 2013-04-24 19:38:11