我正在與淘汰賽的一個小項目,我必須模擬答案的一些問題。 我動態地建立3個按鈕,當我點擊一個我比較它與正確的答案上的文字,如果它是正確的,它應該變成綠色..,如果它不正確,它應該變成紅色,正確的應該變成綠色.. 我試圖用結合淘汰賽的CSS屬性,但它似乎屬性不正確地刷新,即使所計算的關聯與CSS改變 的HTML:淘汰賽css動態綁定
<ul data-bind="foreach: chosenQuestionAnswers">
<li>
<button data-bind="text: answerText, css: $root.answerStatus(), click: $root.selectButton"></button>
</li>
</ul>
柯部分:
selectedAnswer: ko.observable(),
isAnswerCorrect: ko.observable(),
selectButton: function (value) { my.AppViewModel.isAnswerCorrect(my.AppViewModel.checkIfCorrectAnswer(value.answerText));
},
checkIfCorrectAnswer: function (value) {
return (value == my.AppViewModel.chosenQuestionCorrectAnswer());
},
my.AppViewModel.answerStatus = ko.computed(function() {
var exit = this.isAnswerCorrect() == true ? "highlightRight" : "highlightWrong";
console.log(this.isAnswerCorrect());
console.log(exit);
return exit;
}, my.AppViewModel);
console.log顯示var的正確值出口,但按鈕的CSS不會改變......
任何想法,爲什麼?..
感謝....一
你能把你的代碼放在jsfiddle中嗎? – akeeseth
http://jsfiddle.net/mimi/7SbpE/2/ –