Я действительно не знаю, как решить. Однако я довольно близко решаю, и теперь вам просто нужна небольшая помощь от вас экспертов. Моя рабочая скрипка - here. Когда страница загружается, отмечены 2 флажка. Моя точка зрения переплетены, как показано нижеДобавить css runtime в строку таблицы и данные привязать строку
<tbody data-bind="foreach: dataOne">
<tr data-bind="css: { 'makeBold': $root.duplicates.indexOf(name1) !== -1 }" >
<td data-bind="text: id"></td><td > </td>
<td data-bind="text: display"></td><td > </td>
<td> </td>
<td>
<input type="checkbox" data-bind="checked: $root.duplicates.indexOf(name1) !== -1" />
</td>
</tr>
</tbody>
вид модели My ниже
var data1 = [{
name1: "one",
id: 1,
display: "Test1"
}, {
name1: "two",
id: 2,
display: "Test2"
}, {
name1: "three",
id: 3,
display: "Test3"
}];
var data2 = [{
name2: "five"
}, {
name2: "two"
}, {
name2: "three"
}];
var viewModel = {
dataOne: ko.observableArray(data1),
dataTwo: ko.observableArray(data2),
duplicates: ko.observableArray()
};
viewModel.dataTwo.push({
name: "four"
}); //add one on the end
var flattenedOne = ko.utils.arrayMap(viewModel.dataOne(), function (item) {
return item.name1;
});
var flattenedTwo = ko.utils.arrayMap(viewModel.dataTwo(), function (item) {
return item.name2;
});
var differences = ko.utils.compareArrays(flattenedOne, flattenedTwo);
//return a flat list of differences
ko.utils.arrayForEach(differences, function (difference) {
if (difference.status === 'retained') {
viewModel.duplicates.push(difference.value);
}
});
Теперь, когда пользователь нажимает на кнопку Update снова загружать данные и теперь 3 флажков проверяются. То, что я пытаюсь достичь, -
Когда пользователь нажимает кнопку обновления, он должен добавить css в строку таблицы и только сделать эту строку жирным.
Нельзя проверить этот флажок, как отмечено при нажатии кнопки пользователя на кнопке обновления.
Так что в нашем примере, когда пользователь нажимает кнопку «Обновить», он должен сделать строку полужирным, но флажок не должен быть проверен. Таким образом, только первая строка будет выделена жирным шрифтом при нажатии кнопки обновления. В настоящее время, когда загружается страница, он делает 2 строки жирным шрифтом и проверяет, что это неправильно. Он должен сделать строку жирным шрифтом, только нажав кнопку обновления. Пожалуйста, помогите мне, ребята.
у вас есть же условие $ root.duplicates.indexOf (name1) == - 1 для обоих css и проверенных привязок – nav0611
@NaveenKumar я понял это, но не знаю, что я должен делать – DevelopmentIsMyPassion
Сделайте отдельное условие для проверки и привязки css, добавив новые наблюдаемые – nav0611