次のようなマークアップがあるとします。
<form action="foo">
<input name="bar" />
<button type="button">Save</button>
</form>
<script>
function baz() {
// Submit form via AJAX
}
</script>
これをに追加する方が良いですか<button>
:
onclick="baz()"
<script>
またはこれを(jQueryを想定して)に追加するには:
$(function(){
$('button').on('click', baz);
});
私は、インライン JavaScript を禁止するベスト プラクティスについて多くの騒ぎを見てきましたが、私も同意する傾向があります。しかし、 onclick="baz" が使用されているときに存在する上記の配線のコンテキストが削除されるため、ドキュメントの読み込み/準備の手動配線が何が起こっているのかをわかりにくくするのではないかと思っています。
いずれにせよ保守性の問題はありますか?どちらのアプローチにも他の長所/短所はありますか? 私の心からの質問は、インライン JavaScript を使用することのこの特定の側面に関する業界のコンセンサスは何ですか?