2015-03-13 77 views
0

Knockout.js我試圖通過顯示和隱藏我的頁面部分來創建列表視圖和詳細視圖。 我把這個放在一起,https://jsfiddle.net/jessebreuer/apn41oLc/ 當你添加一些記錄後點擊一個名字,它就隱藏了列表並顯示了單個記錄。我現在需要創建一個鏈接返回到列表視圖。 我已經試過這樣:清除可觀察的內容以隱藏knockout.js中的內容

<p data-bind="with: chosenFriend"> 
    <span data-bind="text: name" /></span> 
    <span data-bind="click: chosenFriend('')">return to list</span> 
</p> 

但在單擊事件的代碼似乎保持如不方便:chosenFriend部分由隱藏,當我點擊一個名字。

回答

1

問題是,你已經綁定了click綁定到的返回值chosenFriend('') - 即該代碼將在綁定被解析時執行。您可以以您在視圖中其他位置完成的相同方式綁定到視圖模型上的某個功能,並使該功能可以調用chosenFriend(''),或者您可以直接進行:

<p data-bind="with: chosenFriend"> 
    <span data-bind="text: name" /></span> 
    <span data-bind="click: function() { $root.chosenFriend(''); }">return to list</span> 
</p>