У меня есть рекурсивный дом в KnockoutJs:
<ul data-bind="template: { name: 'tree-hierarchy', foreach: someArray }"></ul>
<script id="some-tree" type="text/html">
<li>
<input type="checkbox" data-bind="attr: { id: id, name: name, value: value}, click: someFunc">
</li>
</scrpt>
Я хочу получить атрибуты отмеченного элемента, поэтому я использую функцию щелчка, чтобы получить данные в функции:
someFunc(data: any, event: any) {
//event.target gets me the attributes
}
Я получаю данные, которые хочу получить в event.target, но проверенный сразу же становится непроверенным.
Если функции щелчка нет, как это, проверено остается:
<input type="checkbox" data-bind="attr: { id: id, name: name, value: value}>
Проверка остается, но когда присутствует функция «щелчка», вызывающая функцию, она немедленно снимается.
Я хочу, чтобы это осталось. Я не хочу использовать 'checked: boolValue', функциональность knockout, так как он создается динамически, и если в массиве 10 значений, будет 10 входов checbox, следовательно, иметь одно значение bool не имеет смысла.
Я хочу, чтобы флажок оставался отмеченным после завершения вызова функции.