多数のレコードを表示する PHP ページがあります。
ページには 2 つの送信ボタンがあります。1 つは次のページ用で、もう 1 つは (ブートストラップ モーダル内で) データを別のデータベースにエクスポートするためのものです。
次のページの HTML は次のとおりです。
<form method="post" action="mypage.php" />
Jump to Page:
<select name="page"">
<option value="1" selected>1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
<input type="submit" value="Go" />
</form>
これは、(ブートストラップ) モーダル内のコードの一部です。
<div class="modal-body">
<form data-async data-target="#modal" action="import.php" method="POST">
<div id="modal" class="alert alert-success" style="font-size:13px;">Please enter the requested data!</div>
<div class="tabbable">
<ul class="nav nav-tabs">
<li class="active"><a href="#pane1" data-toggle="tab" style="font-size:13px;">Project</a></li>
<li><a href="#pane2" data-toggle="tab" style="font-size:13px;">Summary</a></li>
<li><a href="#pane3" data-toggle="tab" style="font-size:13px;">Personal</a></li>
<li><a href="#pane4" data-toggle="tab" style="font-size:13px;">Details</a></li>
<li><a href="#pane5" data-toggle="tab" style="font-size:13px;">Notification</a></li>
</ul>
<div class="tab-content">
<div id="pane1" class="tab-pane active">
<input type="hidden" name="ticketId" id="ticketId" value=""/>
<p>Please select the project you want to file the report under.</p>
<select style="width:350px;" class="chzn-select" name="project">
<option value=""></option>
<option>Project 1</option>
<option selected>Project 2</option>
<option>Project 3</option>
<option>Project 4</option>
</select>
<p class="note">Note: You can change this later.</p>
[... content skipped ...]
</div><!-- /.tab-content -->
</div><!-- /.tabbable -->
</div>
<div class="modal-footer">
<input type="submit" class="btn btn-primary" value="Create Report" />
<a href="#" class="btn" data-dismiss="modal">Close</a>
</div>
</div>
</form>
モーダル ウィンドウ ページのヘッダーには、次の JavaScript があります。
<script>
jQuery(function($) {
$('body').on('submit','form[data-async]', function(event) {
alert('submit Event');
var $form = $(this);
var $target = $($form.attr('data-target'));
$.ajax({
type: $form.attr('method'),
url: $form.attr('action'),
data: $form.serialize(),
success: function(data, status) {
$target.html(data);
}
});
event.preventDefault();
$('#addBookDialog').delay(2000).fadeOut('slow');
location.reload(true);
});
});
</script>
ところで、次のページは、データベースに新しいレコードを照会する単純な PHP で呼び出されます。
問題は次のとおりです。モーダル内の送信ボタンをクリックすると、データは import.php を使用して他のデータベースにエクスポートされます。偉大な。しかし、最初のボタン (次のページ、または別のページ) を使用すると、リクエストは import.php にも送信されますが、別のページが表示されるはずです。
私の質問は、モーダル ウィンドウから情報をエクスポートするために Jquery 関数を使用する方法と、最初の (ページ) 送信ボタンで次のページまたは他のページを呼び出す方法です。
ご不明な点がございましたら、お気軽にお問い合わせください。
乾杯!