2017-02-16 5 views
0

Ich habe ein Bootstrap Modal, die eine Aktion in der Datenbank von Ajax Anruf bestätigen, ich möchte dieses Modal nach Rückkehr Erfolg in Ajax neu zu laden.So laden Sie Bootstrap 3 Modal in Javascript

html:

<div class="modal fade" id="modal-4"> 
    <div class="modal-dialog modal-sm"> 
     <div class="modal-content"> 
      <div class="modal-header"> 
       <button type="button" class="close" data-dismiss="modal">&times;</button> 
       <h3 class="modal-title">Order Status</h3> 
      </div> 
      <div class="modal-body"> 
       <label class="ModalArrow">Order Number</label> 
        <select class="SelectStyle" style="width:95%;" name="OrderId" id="OrderId"> 
         <option value="">Select Order Number</option> 
          <!--populate value using php--> 
          <?php 
           $stmt ="SELECT distinct Order_ID FROM orders where Delivered=0"; 
           foreach ($conn->query($stmt) as $row) { 
          ?> 
          <option value="<?php echo $row['ID'];?>"><?php echo $row['Order_ID'];?></option> 
          <?php 
           } 
          ?> 
        </select> 
      </div> 
      <div class="modal-footer"> 
       <button type="button" class="btn btn-success btn-md" style="margin:0;width: 100px;" onclick="ConfirmDelivery()">Delivered</button> 
       <button type="button" class="btn btn-secondary btn-md" data-dismiss="modal" style="font-weight: bold;">Cancel</button> 
      </div> 
    </div> 
</div> 

Javascript:

function ConfirmDelivery() 
{ 
    select=document.getElementById("OrderId"); 
    OrderId=select.options[select.selectedIndex].text; 

if (OrderId == "Select Order Number") 
{ 
    sweetAlert("","Please Choose Order Number","error"); 
    return false; 
} 

$.ajax({ 
    type:"POST", 
    url:"ConfirmDelivery.php", 
    data:"OrderID="+ OrderId , 
    success: function(data) 
    { 
     if (data == "Success") 
     { 
      sweetAlert("Order Number:" + OrderId + " has been delivered!"); 
      $('#modal-4').on('hidden', function() { 
       $(this).removeData('modal'); 
      }); 
     } 
    } 
}) 
} 

Das Problem ist, dass das Kombinationsfeld nicht neu geladen wird

+0

Holen Sie sich die Daten vom Server in der Ajax-Antwort. Setzen Sie dann die Combo-HTML mit ['html()'] (http://api.jquery.com/html/) –

Antwort

0

von jQuery API

Beschreibung: Entfernen eines zuvor gespeicherten Datenteil.

Zum Inhalt div # ändern modal Sie .text() oder .html() Methoden verwenden können, hängt von Ihren Bedürfnissen.

Verwandte Themen