2014-02-27 143 views
0

我是新來的淘汰賽,並對複選框綁定有點困惑。我有以下HTML: 淘汰賽js檢查綁定

<input id="Category-2039842085241261997" type="checkbox" value="203984,208524,1261997" data-bind="checked:toggleActivation"> 
<label for="Category-2039842085241261997">Camis</label> 

<input id="Category-203984208524715507" type="checkbox" value="203984,208524,715507"> 
<label for="Category-203984208524715507" data-bind="checked:toggleActivation">Crop Tops</label> 

在jQuery中,爲了得到複選框的ID,你會做:

$('#menu-right').on('click', 'input', function(e) { 
    console.log($(this).prop('id')); 
} 

我如何去在淘汰賽的時候得到這個我將選中的事件綁定到複選框,它實際上選擇了所有選項而不是單擊的選項。

jsFiddle

感謝

+0

你能證明你的淘汰賽代碼? – Akhlesh

+0

我已經添加了一個jsFiddle來顯示一個基本列表。它選擇列表中的所有元素。我希望默認情況下取消選中它。點擊複選框後,我想獲得它的值/編號 – user2025749

回答

0

toggleActivation應該是observableArray。

var viewModel = { 
    toggleActivation: ko.observableArray([]) 
}; 

ko.applyBindings(viewModel); 

http://jsfiddle.net/96Jth/1/

+0

我可以從您的小提琴中看到您已添加 -

以獲取要顯示的值。點擊複選框後,我將如何使用該值運行另一個函數,例如 –
                        
                            
    user2025749
                                
                            
                        
                    

+0

您可以訂閱toggleActivation或計算可觀察值。 – Akhlesh

+0

謝謝,最後一個問題。我現在有以下[jsFiddle](http://jsfiddle.net/speedster/96Jth/4/)我想獲取已被單擊的元素的ID我知道你可以通過使用event.target.id並將self.togggleActivation更改爲self.toggleActivation = function(data,event){}如何使用ko.observableArray([])做什麼? – user2025749

0

不使用knockout.js。它的一個簡單的HTML和JAVASCRIPT函數.knockout有一個名爲data-bind的屬性,它綁定數據併爲您檢索數據。 這裏是你理解的代碼。 看看這個網站,首先得到有關knocout使用複選框的基本gyan。 http://knockoutjs.com/documentation/checked-binding.html 祝你好運。