我有一系列複選框,我想收集選定的複選框。該複選框是div的和被點擊div時複選框應該得到遏制,以及:當使用Jquery更改值時,KnockoutJS屬性不會更新
var oCheckBox = $($(this).find('.chkSocialMediaItem').get(0));
oCheckBox.attr('checked', !$(oCheckBox).attr('checked'));
這工作得很好,但KnockoutJS不拿起變化等所選擇的不更新我的櫃檯項目。
我讀了你需要觸發改變事件的地方。但是,當我聽取複選框上的更改事件時,它確實會被觸發。
任何幫助,將不勝感激, 謝謝!
更新:
我已經找到了 '基因敲除' 的解決方案。 在我的div我做了一個數據綁定關「點擊」,並在該函數改變選中的值:
<script type="text/html" id="Template">
<div class="item" data-bind="click: DivClicked">
<input type="checkbox" data-bind="checked: IsASelectedItem" class="chkSocialMediaItem"/>
</div>
</script>
function SocialMediaSearchItem() {
this.IsASelectedItem = ko.observable();
this.DivClicked = function() {
this.IsASelectedItem(!this.IsASelectedItem());
};
}
這是唯一的解決辦法?我真的很想看到一個Jquery解決方案。
感謝您的快速響應!我會檢查測試星期一,當我回來@工作:) –
哦,這是方便的,任何想法如何找出什麼'屬性'一個控件必須以及viewModel? –
目前沒有辦法做到這一點,除了可能自己解析'data-bind'屬性,然後使用屬性名稱和數據('data ['somePropertyName']') –