How to send variable to modal to show value that query from database php

时间:2017-11-13 06:21:49

标签: javascript php html twitter-bootstrap bootstrap-modal

I am trying to send value to modal to query in table from database and display the value that come from WHERE clause that sent from variable I assign it to modal with 'id' attribute I try to save it with javascript in cookie but it show random value and not working correct

here is the link that i click on it to show modal it is in loop in table

<td>
    <a data-toggle="modal" href="#gurantorname" id="'.$payment_row["GuarantorID"].'"> Guarantor Discount</a>
</td>

and here is my modal :

<!-- gurarntour modal-->
<div id="gurantorname" class="modal fade" tabindex="-1" data-width="400">
    <div class="modal-header red">
        <button type="button" class="close" data-dismiss="modal" aria-hidden="true"></button>
        <h4 class="modal-title"> اسم الكفيل  </h4>
    </div>
    <div class="modal-body">
        <?php
        if(isset($_COOKIE['myJavascriptVar'])) { 
            $_COOKIE['myJavascriptVar'];
            echo $_COOKIE['myJavascriptVar'];
            $guarantor_sth = $guarantorobj->getguarantorapplicationbyid($_COOKIE['myJavascriptVar']);
            $guarantor_row = $guarantor_sth->fetch();
        ?>
        <label class=" font-blue-dark text-center">
            <strong>
            <?php
                echo $guarantor_row["GuarantorFirstNameAR"].' '.$guarantor_row["GuarantorSecondNameAR"] .' '.$guarantor_row["GuarantorThirdNameAR"].' '.$guarantor_row["GuarantorLastNameAR"] ;
            ?>
            </strong>
        </label>
        <?php  
        }
        ?>
    </div>
    <div class="modal-footer text-right">
        <a target="_blank"  class="btn green" href="index.php?action=guarantorinfo&guarantorid=<?php echo $payment_row["GuarantorID"];?>" >معلومات الكفيل</a>
        <button type="submit" data-dismiss="modal" class="btn btn-outline dark" >اخفاء</button>
    </div>
</div>
<!--end of gurarntour modal-->

and here is my javascript that send cookie to modal :

<script type="text/javascript">
    $('#gurantorname').on('show.bs.modal', function(e) {
        var $modal = $(this),
        esseyId = e.relatedTarget.id;
        document.cookie = "myJavascriptVar ="+esseyId ;
        alert(esseyId)
    });
</script>

1 个答案:

答案 0 :(得分:1)

我认为您应该在用户点击链接时使用ajax

<a href="javascript:void(0)" class="link" id="'.$payment_row["GuarantorID"].'"> Guarantor Discount</a>

并将id属性添加到标签以显示guarantor_row $ payment_row [&#34; GuarantorID&#34;]

<label id="guarantor_row" class=" font-blue-dark text-center">

让我们创建一个ajax脚本

 $('body').on('click','.link',function(){
    var id = $(this).attr('id');
    $.ajax({
        method: "POST",
        url: "getguarantorapplicationbyid.php",
        data: { id:id  }
    })
    .done(function( json_response) {
        var guarantor_row = $.parseJSON(json_response);             
        //set the data to modal and display
        //guarantor_row.GuarantorFirstNameAR
        //guarantor_row.GuarantorSecondNameAR
        $('#guarantor_row').text(guarantor_row.GuarantorFirstNameAR+" "+guarantor_row.GuarantorSecondNameAR);
        $('#gurantorname').modal('show');


    });
 });

getguarantorapplicationbyid.php

$guarantor_sth = $guarantorobj->getguarantorapplicationbyid($_POST['id']);
$guarantor_row = $guarantor_sth->fetch();
echo json_encode(guarantor_row);