Knockout - element kliknięty
Mam następującą marżę:
<fieldset>
<div>
<label class="editor-label">Question 1?</label>
<input type="text" class="editor-field" />
<button type="button" data-bind="click: helpClicked">Help</button>
<p class="help">Help 3</p>
</div>
<div>
<label class="editor-label">Question 2?</label>
<input type="text" class="editor-field" />
<button type="button" data-bind="click: helpClicked">Help</button>
<p class="help">Help 3</p>
</div>
<div>
<label class="editor-label">Question 3?</label>
<input type="text" class="editor-field" />
<button type="button" data-bind="click: helpClicked">Help</button>
<p class="help">Help 3</p>
</div>
</fieldset>
Chcę przełączyć widoczność<p>
z klasąhelp
w tym samymDiv
jako kliknięty przycisk. Próbuję użyć $ (this), aby określić, który przycisk został kliknięty, a następnie mogę uzyskać prawidłowy element „pomocy”.
Problemem jest$(this)
nie zwraca klikniętego przycisku.
W tej chwili próbuję ukryć kliknięty przycisk, taki jak:
var viewModel = {
helpClicked: function () {
$(this).hide();
}
};
ko.applyBindings(viewModel);
To nie działa. Czy ktoś może pomóc?