2016-08-31 33 views
0

爲什麼這不起作用,因爲Bootstrap或ajax存在問題?更新完成後在CRUD中使用php ajax和jquery時Modal未關閉

這是我的模式更新:

<div class="container"> 
        <!-- Modal update --> 
        <div class="modal fade" id="myModals<?php echo $row->id ;?>" role="dialog"> 
        <div class="modal-dialog"> 

         <!-- Modal content--> 
         <div class="modal-content"> 
         <div class="modal-header"> 
          <button type="button" class="close" data-dismiss="modal">&times;</button> 
          <h4 class="modal-title">Edit Data</h4> 
         </div> 

         <div class="modal-body"> 
          <form> 
          <div class="form-group"> 
           <label for="user">Username:</label> 
           <input type="user" class="form-control" id="users<?php echo $row->id ;?>" value="<?php echo $row->username ;?>"> 
          </div> 
          <div class="form-group"> 
           <label for="password">Password:</label> 
           <input type="password" class="form-control" id="passwords<?php echo $row->id ;?>" value="<?php echo $row->password ;?>"> 
          </div> 
          <button onclick='update("<?= $row->id ?>")' type="submit" class="btn btn-default">Update</button> 
          </form> 
         </div> 

         <div class="modal-footer"> 
          <button type="button" class="btn btn-default" data-dismiss="modal">Close</button> 
         </div> 
         </div> 

        </div> 
        </div> 

       </div> 

,這是我的ajax:

function update(id){ 
var users = $("#users"+id).val(); 
var passwords = $("#passwords"+id).val(); 

$.ajax({ 
    dataType:'html', 
    url:"update.php", 
    type:"POST", 
    data:"users="+users+"&passwords="+passwords+"&id="+id, 
}).done(function(data){ 
    load(); 
    $('back-drop').remove(); 
}); 

}

這是爲什麼不工作時,我提交的變化,模態窗體不完全像這樣關閉:

+0

用$('myModals'+ id).txt('close'); –

+0

你有一個錯字。 '$('myModals'+ id).modal('hide')'應該是'$('#myModals'+ id).modal('hide')'。你在選擇器中忘記了散列'#'。 – Sherif

+0

那是行不通的, –

回答

1

請重新檢查您的選擇器hide()語法。你已經忘記了前面的#號。

更改此:

$('myModals'+id).modal('hide'); 

要這樣:

$('#myModals'+id).modal('hide'); 

爲了檢查這些問題,你應該使用谷歌瀏覽器,然後按CTRL + SHIFT + J.可能的語法錯誤將在顯示被控制檯。