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">×</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
Holen Sie sich die Daten vom Server in der Ajax-Antwort. Setzen Sie dann die Combo-HTML mit ['html()'] (http://api.jquery.com/html/) –