次のマークアップがあります。
<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>
クリックされたボタンと同じ<p>
クラスでの可視性を切り替えたい。$(this) を使用してどのボタンがクリックされたかを判断しようとしていますが、そこから正しい「ヘルプ」要素を取得できました。help
Div
問題は$(this)
、クリックされたボタンが返されないことです。
現時点では、クリックしたボタンを次のように単純に非表示にしようとしています。
var viewModel = {
helpClicked: function () {
$(this).hide();
}
};
ko.applyBindings(viewModel);
これはうまくいきません。誰でも助けてもらえますか?