Knockout - Obtendo o elemento clicado
Eu tenho o seguinte mark-up:
<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>
Eu quero mudar a visibilidade do<p>
com a turmahelp
no mesmoDiv
como o botão clicado. Eu estou tentando usar $ (this) para determinar qual botão foi clicado e, em seguida, eu poderia obter o elemento de "ajuda" correto de lá.
O problema é que$(this)
não está retornando o botão clicado.
No momento estou tentando simplesmente esconder o botão clicado como:
var viewModel = {
helpClicked: function () {
$(this).hide();
}
};
ko.applyBindings(viewModel);
Isso não funciona. Alguém pode ajudar por favor?