完全に機能するブートストラップモーダルウィンドウにフォームがあります-フォームの送信時に結果がウィンドウに投稿されます。このフォームは、ページの html にハードコードされています。
今、フォームをリモートで読み込もうとしています。フォームをうまくロードします(モーダルボディに入れます)。ただし、送信をクリックするとモーダルが消え、ページ全体がフォームの URL に移動します。
親ページまたはリモート URL でバインディングを定義する必要がありますか? 私の考えでは、ページロード時にリモート フォームの ID が DOM に認識されていません。また、リモート URL が親ページの div を参照できるかどうかもわかりません。
だから私は同期していないようです-親DOMはリモートであるためフォームを認識せず、リモートフォームが親で定義されたモーダルにバインドできるかどうかわかりません。
何かご意見は?
ありがとう!
親ページから:
<div class="modal hide fade in" id="mymodal">
<div class="modal-header"><button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button></div>
<div class="modal-body"></div>
</div>
ここにリモート URL をロードします。
<a class="tip" data-toggle="modal" data-target="#mymodal" href="/index.php/change_delivery/change/2" rel="tooltip" title="Change Delivery Date"><i class="icon-calendar"></i></a>
リモート URL からのフォーム:
<form class="form-horizontal" id="delivery_date_form" action="/change_delivery/submit_change">
....
</form>
そして、リモート URL/フォームの最後に:
<script>
$(function() {
$('#delivery_date_form').bind('submit', function() {
$.ajax({
url: "change_delivery/submit_change",
type: "POST",
dataType: "html",
contentType: "application/html",
success: function(msg) {
// this is returned value from your PHP script
//your PHP script needs to send back JSON headers + JSON object, not new HTML document!
// update your "message" element in the modal
$("#modal-body").text(msg);
}
});
});
});
</script>