2016-12-15 291 views
0

Bootstrapモーダルから親フォーム/ウィンドウにデータ属性またはクリックイベントを渡す方法。例えばBootstrap Modalから親フォームへデータ値を渡す方法

、 入力ボックスの下にクリックすると、モーダルは今、ユーザーがモーダルの内側のdivをクリックしたときに、データ属性

<input type="text" name="menu_image_id" class="form-control" data-toggle="modal" data-target=".show_modal_w" /> 

<input type="text" name="menu_image_id_2" class="form-control" data-toggle="modal" data-target=".show_modal_w" /> 

モーダルウィンドウ

<div class="modal fade show_modal_w" tabindex="-1" role="dialog"> 
    <div class="modal-dialog modal-lg" role="document"> 
     <div data-id="1" data-dismiss="modal">Hello</div> 
     <div data-id="2" data-dismiss="modal">Welcome</div> 
     <div data-id="3" data-dismiss="modal">Morning</div> 
    </div> 
</div> 

を持つdivタグでポップアップしますがたとえばHello、WelcomeまたはMorningの場合、modalからparentへのid値をmenu_image_idという名前の入力ボックスに渡す必要があります。

以下のclose関数を使用してみましたが、親ウィンドウにモーダルデータIDを取得できませんでした。私はあなたがやったよりも、別の方法をしようとしている

$('.show_modal_w').on('hidden.bs.modal', function (e) { 
    $(e.relatedTarget); 
}) 

答えて

0

の代わりhidden.bs.modalをキャプチャ、私はdiv.on.clickを捕捉し、その代わりにしています:

$('.show_modal_w').on('hidden.bs.modal', function (e) { 
    $(e.relatedTarget); 
}) 

私は

$("body").on("click", ".show_modal_w div[data-id]", function() { 
    $("input[name='menu_image_id']").val($(this).data("id") + " - " + $(this).text()); 
    $(".show_modal_w").modal("hide"); 
}); 

を書き、ここにjsfiddleです:https://jsfiddle.net/f9urohoo/ 私はIDを入れて[name = "menu_image_id"]で入力内でクリックされたdivのテキストですが、あなたはそれをあなたが望むように適応させることができます。

あなたが望むかどうか教えてください

+0

あなたのソリューションに感謝します。それは良い仕事、問題は直面している問題は、常にname = menu_image_idに値を入れても私たちは複数の名前を持っていてもmenu_image_idを動的にする方法はありますか? 。 –

+0

@Vinoth Kumarあなたが望む典型的なワークフローについて、あなたが正確に何を望んでいるのか分からないのですか? –

+0

はい私は画像IDを格納している各入力ボックスに一意のIDを追加して解決し、e.relatedTargetを使用してその値をモーダルに渡し、入力ボックスの一意のキー値を格納する隠し入力ボックスをそのモーダルに配置しました。その後、モーダルdivをクリックした後、モーダルの隠しボックスに格納されているユニークキーをボディから検索し、そこにモーダルdivをクリックして配置しました。最後に解決しました:-)あなたの大きな助けに感謝Gille –

関連する問題