を取得:ノックアウト - 私は、次のマークアップを持ってクリックした要素
<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>
私がクリックされたボタンと同じDiv
でクラスhelp
と<p>
の可視性を切り替えたいです。私はどのボタンがクリックされたかを判断するために$(これ)を使用しようとしています。そしてそこから正しい "ヘルプ"要素を得ることができます。
$(this)
は、クリックされたボタンを返さないという問題があります。
var viewModel = {
helpClicked: function() {
$(this).hide();
}
};
ko.applyBindings(viewModel);
これは動作しません:私は単にのようにクリックされたボタンを非表示にしようとしています現時点では
。誰でも助けてくれますか?
ネストされたコンテンツで'
'arguments'オブジェクトをデバッグしてチェックすることで、常に引数を見つけることができます。 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/arguments – christo8989