button要素で呼び出す、またはa要素で呼び出す場合は、「data-*」属性を使ってモーダルにデータを渡すことができます。
参考: モーダル ≪ JavaScript ≪ Bootstrap3日本語リファレンス
しかし、JavaScriptで呼び出す場合はどのようにして「data-*」属性のデータを参照すればよいでしょう?
以下のように書くことで参照できます。
HTML
<button type="button" id="sampleButton" class="btn btn-primary btn-lg" data-recipient="受信者名">
モーダル・ダイアログ 呼び出し
</button>
<!-- モーダル・ダイアログ -->
<div class="modal fade" id="sampleModal" tabindex="-1">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal"><span>×</span></button>
<h4 class="modal-title">タイトル</h4>
</div>
<div class="modal-body">
本文
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">閉じる</button>
<button type="button" class="btn btn-primary">ボタン</button>
</div>
</div>
</div>
</div>
JavaScript
$( function() {
$('#sampleButton').click( function (e) {
$('#sampleModal').modal({}, e.target);
});
});
$('#sampleModal').on('show.bs.modal', function (event) {
var button = $(event.relatedTarget);
var recipient = button.data('recipient');
var modal = $(this);
modal.find('.modal-title').text(recipient + 'へのメッセージ');
});
キモは$('#sampleModal').modal({}, e.target);
の部分。modal()
の第2引数にオブジェクトを渡すことができます。(第1引数はモーダルのオプション)