2015-05-06 54 views
0

值這不是建議作爲重複爲這個問題一個問題的副本無關與事件結合充分利用PHP動態創建的複選框使用jQuery

嗨,我試圖讓一個複選框的值發送ajax請求到一個php頁面,複選框是使用php動態創建的。到目前爲止,我的代碼允許我向用戶顯示一條指令,告訴用戶選擇要從動態創建的列表中刪除的管理員。然後當一個複選框被選中時,該隱藏隱藏並顯示刪除管理按鈕。接下來點擊刪除按鈕,我試圖確認用戶想要刪除所選的管理員,然後點擊確認或取消。我真正的問題是獲取選中的複選框的值傳遞到php處理頁面,到目前爲止,我已設法獲得第一個複選框的值,無論選中哪個複選框都會通過

Jquery

<script type="text/javascript"> 

$(document).ready(function() { 

    var checkboxes = $("input[type='checkbox']"); 

checkboxes.click(function() { 
    $('.delete_admin_but').show(); 
    $('#adminDeleteNotice').hide(); 
    var deleteAdminName=$(this).attr('id'); 
}); 

    $(".delete_admin_but").click(function() { 



// if(confirm("Are you sure you want to delete the Admin")) { 

    $("#deleteAdminError").html('<img src="image/ajax-loader.gif" width="16" height="16" alt=""/>'); 




$.post("includes/delete_admin.inc.php",{deleteAdminname:deleteAdminName},function(json) { 
    if(json.result === "success") { 
     $("#deleteAdminError").html(json.message); 
// $('.add_intern').get(0).reset(); 
    }else{ 
     $("#deleteAdminError").html(json.message); 
    } 
}); 



});//submit click 
});//doc ready 
</script> 

HTML表單

<div id="deleteAdmin" style="display:none"> 

<form id="adminDelete"> 

      <div class="delete_admin_list"> 

      <?php while($row = mysqli_fetch_array($result1)) { ?> 

       <input type="checkbox" id="<?php echo $row['name']; ?>" value="<?php echo $row['id']; ?>" name="delete[]" class="checkboxAdmin" /> 

       <div id="admin_db_detail"><?php echo $row['name']; ?> - <?php echo $row['email']; ?></div> 

       <?php } ?> 

     </div>   


<div id="adminDeleteNotice" style="display:block">Please Choose an Admin to Delete</div> 

<input name="delete_admin_but" id="delete_admin_but" type="button" class="delete_admin_but" value="Delete Admin" style="display:none"/> 

</form> 

<div id="deleteAdminError"></div> 

</div> 

如果有人可以幫助我想出解決辦法我將不勝感激

+0

的[事件綁定上動態創建的元素?]可能重複(http://stackoverflow.com/questions/203198/事件綁定在動態創建的元素) – DelightedD0D

+0

快速瀏覽一下,你的設置'deleteAdminName'作爲一個變量,所以它是一個局部變量。點擊處理程序完成後,它不再存在。 – Taplar

+0

@DelightedDD這是如何重複?即時消息不綁定事件,我也不使用選擇列表? – Tiny

回答

0

我已經明白了這一點,所以張貼以說明如何並提出一個觀點,認爲這與建議的重複建議問題無關。也許那些建議這些重複的人應該首先正確地閱讀這個問題,然後他們提出的問題被重複,以確定是否有任何相關性。但是,如果我錯了,我會很樂意撤回這個評論應該有人向我展示了所提問題與我發佈的問題的相關性並提供瞭解決方案。

我的解決方案

的jQuery更改爲以下

<script type="text/javascript"> 

$(document).ready(function() { 

    var checkboxes = $("input[type='checkbox']"); 

checkboxes.click(function() { 
    $('.delete_admin_but').show(); 
    $('#adminDeleteNotice').hide(); 

}); 

    $(".delete_admin_but").click(function() { 

$.post("includes/delete_admin.inc.php",{ checked_box : $('input:checkbox:checked').val()},function(json) { 
    if(json.result === "success") { 
     $("#deleteAdminError").html(json.message); 
// $('.add_intern').get(0).reset(); 
    }else{ 
     $("#deleteAdminError").html(json.message); 
    } 
}); 
     });//submit click 
});//doc ready 
</script> 

我從原來的腳本所做的更改與$。員額線

原始代碼

$.post("includes/delete_admin.inc.php",{deleteAdminname:deleteAdminName},function(json) { 

,從被選擇的複選框得到的複選框的值新代碼

$.post("includes/delete_admin.inc.php",{ checked_box : $('input:checkbox:checked').val()},function(json) {