简体   繁体   中英

Open remote page into bootstrap modal

Here is something that seems to be having repetition problem with. I want to open a content into a modal from a remote page, which is populated from a MySql database. I also want that modal to be opened with my custom styling etc. I have gone so far with it, but after that I have got stuck. Here is the code so far

the output on the page:

$output .='<h4><a class="md-trigger" data-OfferID="' . $offer_id . '" href="#" data-modal="offer_modal">' . $title . '</a></h4><hr>';

the modal where data is loaded, on click of output (located in footer.php):

<div id="offer_modal" class="md-modal md-effect-flip" aria-hidden="true">
<div class="md-content">

</div>
</div>

the script located in the page where $output is echoed:

$('.md-trigger').click(function(){
var OfferID=$(this).attr('data-OfferID');
$.ajax({url:"Open-Offer.php?OfferID="+OfferID,cache:false,success:function(result){
    $(".md-content").html(result);
}});
});

and just as a reference, the remote page which loads the data based on id, and then populates modal:

<?php
extract($_GET);
?>

<?php 
require('inc/connect/config.php');
$offer = (int) $_GET['OfferID']; ?>
<?php
try {

$code_sql = 'SELECT * FROM codes WHERE id LIKE :code_id';
$query = $db->prepare($code_sql);
$code_params = array(':code_id' => $offer);
$query->execute($code_params);

$code_r = $query->fetch(PDO::FETCH_ASSOC);
$c_title = $code_r['title'];
$c_desc = $code_r['description'];
$c_redeem = $code_r['redemption'];
$c_textcode = $code_r['textcode'];
$c_exp = $code_r['expiry'];
$c_terms = $code_r['terms'];
$c_url = $code_r['url'];

} catch (PDOException $e) {
echo "failed to load offer";
exit;
}
?>

<button type="button" class="close close-md" data-dismiss="modal" aria-label="Close"><h3><span aria-hidden="true">&times;</span></h3></button>
<h5><?php echo $c_title; ?></h5>
<p><?php echo $c_desc; ?></p>
<h3><?php echo $c_textcode; ?></h3>
<p><?php echo $c_redeem; ?></p>
<p class="small-text"><?php echo $c_terms; ?></p>

At the moment, the problem I am getting is the modal only loads once, when the top item in the list is clicked, it won't load when clicking any other item in the list... what am i doing wrong!! I am pretty new to all of this, so go easy on me please :)

thanks in advance

Kaylee

Test with this example.

$('.md-trigger').on('click',function(){
      var OfferID=$(this).attr('data-OfferID');
      $.ajax({url:"Open-Offer.php?OfferID="+OfferID,cache:false,success:function(result){
     $(".md-content").empty().append(result);
}});
});

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM