テンプレートの1つがn行のテーブルをレンダリングするアプリケーションを開発しています。各行に、編集や削除などのボタンがある列があります。
[編集]をクリックすると、編集フォームが一部のdivの同じウィンドウに表示されます。そのフォームには、バックエンドからフェッチされた値を入力する必要があります。
今、これで素晴らしいことは何もありません。私の問題はこれです:
次のテンプレート構造を使用して完全なテーブルをレンダリングするビューがあります。
<script type="text/template" id="ledgersing">
<div class="span6 widget">
<div class="widget-header">
<span class="title">Ledgers</span>
<button class="btn btn-danger pull-right" id="addLedgerButton">Add Ledger</button>
</div>
<div class="widget-content">
<table width="100%" class="table table-striped dataTable">
<thead>
<tr><th>Name</th><th>Email</th><th>Phone</th><th>Action</th></tr>
</thead>
<tbody>
<% _.each(ledgers,function(data){ %>
<tr>
<td><%= data.name %></td>
<td><%= data.email %></td>
<td><%= data.contact_number %></td>
<td><span onClick="alert(<%= data.id %>)">x</span></td>
</tr>
<% }) %>
</tbody>
</table>
</div>
</div>
</div >
</script>
これでは、xをクリックしたときにIDに警告するだけです。今、私は必然的にこのようなonClickイベントを使用する必要がありますか?つまり、処理に使用する構成にIDが必要になるということです。より良い解決策は何でしょうか?アプリケーションが適切に構成されていれば、backbonejsはこの混乱を簡単に処理できることを私は知っています。だから本質的に私は専門家から知りたいのですが、彼らはそのようなシナリオで何をしますか?彼らはどのようにアプリケーションを構築しますか?私はこのフロントエンドフレームワークの初心者です。