成熟丰满熟妇高潮XXXXX,人妻无码AV中文系列久久兔费 ,国产精品一国产精品,国精品午夜福利视频不卡麻豆

您好,歡迎來到九壹網(wǎng)。
搜索
您的當前位置:首頁jQuery實現(xiàn)checkbox即點即改批量刪除及中間遇到的坑

jQuery實現(xiàn)checkbox即點即改批量刪除及中間遇到的坑

來源:九壹網(wǎng)

 最近要用jQuery實現(xiàn)一個批量刪除操作,效果如下圖

最終頁面page.html,此頁面使用了bootstrap和jQuery,如果沒有需要下載一下

<!DOCTYPE html>
<html>
 <head>
 <meta charset="UTF-8">
 <title>視頻管理</title>
 <link rel="stylesheet" type="text/css" href="css/init.css" rel="external nofollow" />
 <link rel="stylesheet" type="text/css" href="css/bootstrap.min.css" rel="external nofollow" />
 <script src="js/jquery-3.2.1.min.js"></script>
 <script src="js/bootstrap.min.js"></script>
 <style type="text/css">
 .head {
 background-color: #EFEFF4;
 font-size: 16px;
 color: black;
 padding: 20px;
 font-size: 20px;
 overflow: hidden;
 margin-bottom: 10px;
 }
 .table {
 margin-top: 30px;
 border: 1px solid #CCCCCC;
 }
 .name_info {
 color: red;
 }
 .message p {
 margin: 0px;
 padding: 0px;
 }
 .form_0 {
 background-color: #EEEEEE;
 }
 </style>
 </head>
 <body>
 <div class="container-fluid">
 <div id="row" class="head">
 <div class="col-sm-12 col-md-12 col-lg-12">
 <p>視頻管理</p>
 </div>
 </div>
 <div id="row" class="col-sm-12 col-md-12">
 <div class="col-xs-1">
 <a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" id="batchDel" class="btn btn-danger btn">批量刪除 <span class="badge" id="badge_0">0</span></a>
 </div>
 <div class="col-xs-1">
 <p class="text-danger">刪除成功</p>
 </div>
 <div class="col-xs-1">
 <a href="speaker_add.html" rel="external nofollow" class="btn btn-primary btn">添加</a>
 </div>
 <div id="row" class="col-xs-6 col-md-offset-1">
 <form class="form-inline form_0" role="form">
 <div class="form-group col-xs-3 col-md-3">
 <input type="text" class="form-control" id="name" placeholder="課程名稱">
 </div>
 <div class="form-group col-xs-2 col-md-2">
 <select class="form-control btn-primary">
 <option>請選擇課程</option>
 <option>2</option>
 </select>
 </div>
 <div class="form-group col-xs-2 col-md-2">
 <select class="form-control btn-primary">
 <option>請選擇老師</option>
 <option>2</option>
 </select>
 </div>
 <div class="form-group col-xs-2 col-md-2">
 <button type="submit" class="btn btn-primary">查詢</button>
 </div>
 </form>
 </div>
 </div>
 <div class="row">
 <div class="col-md-10 col-lg-10">
 <table class="table table-striped">
 <thead>
 <tr>
 <th>選擇</th>
 <th>序號</th>
 <th>名稱</th>
 <th>介紹</th>
 <th>講師</th>
 <th>時長</th>
 <th>播放次數(shù)</th>
 <th>編輯</th>
 <th>刪除</th>
 </tr>
 </thead>
 <tbody>
 <tr>
 <td>
 <input class="check_0" value="0" type="checkbox">
 </td>
 <td class="show_id">1</td>
 <td id="show_name">環(huán)境搭建</td>
 <td>這視頻真tm牛逼</td>
 <td>老王</td>
 <td>666</td>
 <td>666</td>
 <td>
 <a href="video_update.html" rel="external nofollow" rel="external nofollow" rel="external nofollow" id="edit_submit"><span class="glyphicon glyphicon-pencil"></span>編輯</a>
 </td>
 <td>
 <a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" id="delete" data-toggle="modal" data-target="#myModal"><span class="glyphicon glyphicon-trash"></span>刪除</a>
 </td>
 </tr>
 <tr>
 <td>
 <input class="check_0" value="1" type="checkbox">
 </td>
 <td class="show_id">1</td>
 <td id="show_name">環(huán)境搭建</td>
 <td>這視頻真tm牛逼</td>
 <td>老王</td>
 <td>666</td>
 <td>666</td>
 <td>
 <a href="video_update.html" rel="external nofollow" rel="external nofollow" rel="external nofollow" id="edit_submit"><span class="glyphicon glyphicon-pencil"></span>編輯</a>
 </td>
 <td>
 <a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" id="delete" data-toggle="modal" data-target="#myModal"><span class="glyphicon glyphicon-trash"></span>刪除</a>
 </td>
 </tr>
 <tr>
 <td>
 <input class="check_0" value="2" type="checkbox">
 </td>
 <td class="show_id">1</td>
 <td id="show_name">環(huán)境搭建</td>
 <td>這視頻真tm牛逼</td>
 <td>老王</td>
 <td>666</td>
 <td>666</td>
 <td>
 <a href="video_update.html" rel="external nofollow" rel="external nofollow" rel="external nofollow" id="edit_submit"><span class="glyphicon glyphicon-pencil"></span>編輯</a>
 </td>
 <td>
 <a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" id="delete" data-toggle="modal" data-target="#myModal"><span class="glyphicon glyphicon-trash"></span>刪除</a>
 </td>
 </tr>
 </tbody>
 </table>
 </div>
 </div>
 <div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
 <div class="modal-dialog">
 <div class="modal-content">
 <div class="modal-header">
 <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
 <h4 class="modal-title" id="myModalLabel">溫馨提示</h4>
 </div>
 <div id="info" class="modal-body">你確定要刪除嗎?</div>
 <div class="modal-footer">
 <button type="button" class="btn btn-default" data-dismiss="modal">關閉</button>
 <button type="button" id="delete_submit" class="btn btn-primary">確定</button>
 </div>
 </div>
 <!-- /.modal-content -->
 </div>
 <!-- /.modal -->
 </div>
 </div>
 <form id="form" method="post">
 <input type="hidden" name="_method" id="_method" value="DELETE" />
 <input type="hidden" name="id" id="id" />
 </form>
 </body>
 <script type="text/javascript">
 $(document).ready(function() {
 $("#delete").click(function() {
 var click_name = $(this).parent().siblings("#show_name").html();
 var click_id = $(this).parent().siblings("#show_id").html();
 $("#info").html("你確定要刪除視頻:<a class='name_info'>" + click_name + "</a>嗎?");
 $("#id").val(click_id);
 })
 $("#delete_submit").click(function() {
 $("#_method").val("DELETE");
 $("#form").submit();
 })
 $("#edit_submit").click(function() {
 var click_id = $(this).parent().siblings("#show_id").html();
 $("#id").val(click_id);
 $("#form").attr("method", "get");
 $("#_method").val("get");
 $("#form").submit();
 })
 //獲取選中的個數(shù)
 $(".check_0").click(function() {
 $("#badge_0").html($("input[type=checkbox]:checked").length);
 //alert($("input[type = checkbox]: checked ").length); 
 })
 //批量刪除
 $("#batchDel").click(function() {
 var params = "";
 $("input[type = checkbox]:checked").each(function(index,element){
 //第一個id不需要加前綴
 if(index == 0) {
 params += "id=" +
 $(this).val();
 } else {
 params += "&id=" +
 $(this).val();
 }
 });
 alert("生成的拼接參數(shù):" + params);
 })
 })
 </script>
</html>

上圖的操作主要需要兩個操作:

一、當checkBox點擊時進行選中計數(shù)(帶坑)。

二、當點擊批量刪除時,拼接選中單位的id,傳遞給個后臺。

初看一下,感覺這些很好實現(xiàn),并且實現(xiàn)的方法很多。當初我也是這么認為的,結果搞了一個上午.......,接下來就看看jQuery的一些坑。

我開始想法是每次點擊checkBox時,對所有的checkBox進行each()遍歷,如果是勾選狀態(tài)就將Num++,最后將num的值賦給批量刪除的數(shù)字小標簽,順便把id也拼接了。

$(".check_0").click(function(){
 var num=0;
 var del_str="";
 $(".check_0").each(function(){
 alert($(this).val()+":"+$(this).attr("checked"));
 if($(this).attr("checked")=="checked"){
 num++;
 del_str+=$(this).parent().siblings("show_id").html()+"/";
 }
 alert(this.checked);
 })
 })

當這段代碼觸發(fā)時,卻發(fā)現(xiàn)一個詭異的現(xiàn)象:這段代碼會在勾選效果前先觸發(fā)。類似于beforeClick(),所以當代碼遍歷時,無法獲取當前的勾選狀態(tài)。

就這個問題,我在網(wǎng)上找了半天答案,硬是不知道如何解決,什么mouseup()都用了一下,都是beforeClick的效果。

最后我使用了另一種寫法。

//獲取選中的個數(shù)
 $(".check_0").click(function() {
 $("#badge_0").html($("input[type=checkbox]:checked").length);
 //alert($("input[type = checkbox]: checked ").length); 
 })
 //批量刪除
 $("#batchDel").click(function() {
 var params = "";
 $("input[type = checkbox]:checked").each(function(index,element){
 //第一個id不需要加前綴
 if(index == 0) {
 params += "id=" +
 $(this).val();
 } else {
 params += "&id=" +
 $(this).val();
 }
 });
 alert("生成的拼接參數(shù):" + params);
 })

  成功運行出效果!

結論:

  在click()中使用input[type=[checkbox]:checked]選擇器獲得勾選元素時,得到的就是勾選后的結果afterclick()。

  而使用.each()遍歷時,獲取的是勾選前的效果beforeclick。

  為什么一個click函數(shù)里,能得出beforeclick和aferclick兩種效果?

  坑哭......

總結

以上所述是小編給大家介紹的jQuery實現(xiàn)checkbox即點即改批量計數(shù)及中間遇到的坑,希望對大家有所幫助,如果大家有任何疑問歡迎各我留言,小編會及時回復大家的!

Copyright ? 2019- 91gzw.com 版權所有 湘ICP備2023023988號-2

違法及侵權請聯(lián)系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市萬商天勤律師事務所王興未律師提供法律服務