Настройка:
Я использую нокаут с шаблонами jQuery по умолчанию.
У меня есть выпадающий список (комбинированный) и таблица.Таблица содержит список предметов.В каждой строке есть тд с названием элемента и тд с ссылкой «Удалить».
Если элемент находится в комбинированном списке, его нет в таблице, и наоборот.
Если я выберу элемент в комбо, произойдут три вещи:
Значение будет записано в мою модель (this.selectedCostCentre = ko.observable ('');)
элемент добавляется в таблицу.
элемент удаляется из комбо.
Итакочень хорошоПроблема в том, что когда я удаляю элемент из таблицы, я хочу добавить его обратно в комбо:
Я удаляю элемент с помощью кнопки удаления.Моя проблема в том, что я не могу найти способ указать, какой элемент удаляется.
Итак, проблема в следующем:
Как я могу передать значениеэлемент, который я удаляю в таблице в метод моей модели представления, который обрабатывает событие щелчка для привязки данных ссылки удаления?
Код:
Таблица:
<fieldset style="padding-top:10px;">
<legend>Actividades Asociadas</legend>
<table>
<thead>
<tr>
<th>
Actividad
</th>
<th> </th>
</tr>
</thead>
<tbody data-bind="template: {name:'actividadesAsociadas', foreach: viewModel.costCentres}"></tbody>
</table>
</fieldset>
<script type="text/x-jquery-tmpl" id="actividadesAsociadas">
<tr>
<td data-bind="text: NameCC"></td>
<td><a href="#" data-bind="click: function() { viewModel.removeCC('how to identify the item being deleted?') }">Delete</a></td>
</tr>
</script>
Комбо:
<fieldset>
<legend>Asociar Actividades a la Cuenta</legend>
<div class="editor-label">
Elija Actividad
</div>
<div class="editor-field">
<select id="All" data-bind="options: allCostCentres, value: selectedCostCentre, optionsValue: 'CostCentreId', optionsText: 'NameCC', optionsCaption: 'Choose...'"></select>
</div>
<input type="hidden" name="AccountId" id="AccountId" value="@Model.AccountId" />
</fieldset>
Определение проблемы:
Строка, с которой у меня проблемы:
<td><a href="#" data-bind="click: function() { viewModel.removeCC('how to identify the item being deleted?') }">Delete</a></td>