datatable使用笔记

这是一个使用datatable的jsp文件实例,实现了点击单元格后编辑单元格所在行的内容。

  1 <%@ page pageEncoding="UTF-8"%>
  2 <!DOCTYPE html>
  3 <html>
  4 <head>
  5 <title>场馆信息编辑</title>
  6 <link rel="shortcut icon" type="image/ico" href="http://www.datatables.net/favicon.ico" />
  7 <link rel="stylesheet" type="text/css" href="./dist/css/bootstrap.min.css">
  8 <link rel="stylesheet" type="text/css" href="./css/jquery.dataTables.css">
  9 
 10 <style type="text/css">
 11 table.dataTable tr td:name {
 12     text-align: center;
 13 }
 14 
 15 table.dataTable tr td:name:before {
 16     content: "\f096"; /* fa-square-o */
 17     font-family: FontAwesome;
 18 }
 19 
 20 table.dataTable tr.selected td:name:before {
 21     content: "\f046"; /* fa-check-square-o */
 22 }
 23 </style>
 24     <script type="text/javascript" charset="utf-8" language="javascript" src="./js/jquery-1.11.1.min.js"></script>
 25     <script type="text/javascript" charset="utf-8" language="javascript" src="./dist/js/bootstrap.min.js"></script>
 26     <script type="text/javascript" charset="utf-8" language="javascript" src="//cdn.datatables.net/1.10.4/js/jquery.dataTables.min.js"></script>
 27 <script type="text/javascript" class="init">
 28     var table;
 29     var courtinfoarray = new Array();
 30     $(document).ready(function() {    
 31     //获取当前点击按钮所在行的内容
 32     $('#example').on( 'click', 'tbody td:not(:first-child)', function (e) {
 33         var tdobj = $(this);
 34         var nowTable = document.getElementById("example");
 35         var cellArray = new Array();
 36         var str1 = tdobj.text();
 37         if(str1=="编辑")
 38         {
 39             var e = e || window.event; 
 40             var target = e.target || e.srcElement; 
 41             if (target.parentNode.tagName.toLowerCase() == "td") { 
 42                 
 43             //获取行号
 44             var rowIndex1 = target.parentNode.parentNode.rowIndex; 
 45             var column = nowTable.rows[rowIndex1].cells.length-1;
 46     
 47             for(var i=0;i<column;i++)
 48             {
 49                 cellArray[i] = nowTable.rows[rowIndex1].cells[i].innerHTML;
 50             }
 51             
 52             //给模态框赋初始值
 53             document.getElementById("courtName").value=cellArray[0];//场馆名
 54             document.getElementById("openTime").placeholder=cellArray[1];//开馆时间
 55             document.getElementById("closeTime").placeholder=cellArray[2];//闭关时间
 56             document.getElementById("courtCount").placeholder=cellArray[3];//资源数目
 57             document.getElementById("courtPrice").placeholder=cellArray[4];//价格
 58             
 59             //弹出模态框
 60             $("#myModal").modal({ keyboard:true});
 61             }
 62             
 63         }
 64     } );
 65     $.post("courtinfo.action", {"dataType":"json"}, function(data, status){
 66         var infojson = JSON.parse(data);
 67         var i=0;
 68         $(infojson).each(function(){
 69             courtinfoarray[i] = new Array();
 70             courtinfoarray[i].push(this.v_name);
 71             courtinfoarray[i].push(this.open_time);
 72             courtinfoarray[i].push(this.close_time);
 73             courtinfoarray[i].push(this.num);
 74             courtinfoarray[i].push(this.charge);
 75             courtinfoarray[i].push(this.is_open);
 76             i++;
 77         });    
 78         $('#example').dataTable( {
 79             "oLanguage": {
 80                 "sSearch": "搜索:",
 81                 "sLengthMenu": "每页显示 _MENU_ 条记录",
 82                     "sZeroRecords": "Nothing found - 没有记录",
 83                 "sInfo": "显示第  _START_ 条到第  _END_ 条记录,一共  _TOTAL_ 条记录",
 84                 "sInfoEmpty": "显示0条记录",
 85                 "oPaginate": {
 86                     "sPrevious": " 上一页 ",
 87                     "sNext":     " 下一页 ",
 88                     }
 89                 },
 90             "bStateSave": true,
 91             "bProcessing":true,
 92              "data": courtinfoarray,
 93              "columns": [
 94                  { "title": "场馆名称" },
 95                  { "title": "开馆时间" },
 96                  { "title": "闭馆时间" },
 97                  { "title": "价格", "class": "center" },
 98                  { "title": "数目", "class": "center" },
 99                  {"title":"是否开放","class":"center" },
100                  {"title":"编辑","class":"center",defaultContent:"<button type=\"button\" class=\"btn btn-info\">编辑</button>", orderable: true}
101              ],
102              order: [ 1, 'asc' ]
103         } );
104   });
105 });
106 
107     function mysubmit()
108     {
109         alert("确定修改吗");
110         document.getElementById("editform").submit();
111     }
112 </script>
113 </head>
114 <body>
115 
116     <ul class="breadcrumb">
117         <li><a href="courtinfo.jsp">首页</a></li>
118         <li class="active">场馆信息编辑</li>
119     </ul>
120 <body>
121     <div class="container" style="margin-top: 10px" align="center">
122         <table cellpadding="0" cellspacing="0" border="0"
123             class="table table-striped table-bordered table-hover dispaly"
124             id="example">
125             <thead>
126                 <tr>
127                     <th>馆名</th>
128                     <th>开馆时间</th>
129                     <th>闭关时间</th>
130                     <th>资源数目</th>
131                     <th>价格</th>
132                     <th width="%18">是否开放</th>
133                     <th>编辑</th>
134                 </tr>
135             </thead>
136         </table>
137     </div>
138 
139     <!-- 模态框(Modal) -->
140     <div class="modal fade" id="myModal" tabindex="-1" role="dialog"
141         aria-labelledby="myModalLabel" aria-hidden="true">
142         <div class="modal-dialog">
143             <div class="modal-content">
144                 <div class="modal-header">
145                     <button type="button" class="close" data-dismiss="modal"
146                         aria-hidden="true">&times;</button>
147                     <h4 class="modal-title" id="myModalLabel">编辑该馆内容</h4>
148                 </div>
149                 <form class="bs-example bs-example-form" action="courtedit.action" method="post" role="form" id="editform">
150                     <div class="input-group">
151                     <span class="input-group-addon">场馆名称</span> <input 
152                         type="text" class="form-control" placeholder="" id="courtName" readonly="readonly" name="courtname">
153                     </div>
154                     <div class="input-group">
155                         <span class="input-group-addon">开馆时间</span> <input type="text"
156                             class="form-control" placeholder="" id="openTime" name="opentime">
157                     </div>
158                     <div class="input-group">
159                         <span class="input-group-addon">闭馆时间</span> <input type="text"
160                             class="form-control" placeholder="" id="closeTime" name="closetime">
161                     </div>
162                     <div class="input-group">
163                         <span class="input-group-addon">资源数量</span> <input type="text"
164                             class="form-control" id="courtCount" placeholder="" name="courtcount">
165                     </div>
166                     <div class="input-group">
167                         <span class="input-group-addon">场馆价格</span> <input type="text"
168                             class="form-control" id="courtPrice" placeholder="" name="courtcharge">
169                     </div>
170                     <div class="input-group">
171                         <span class="input-group-addon">是否开放</span> 
172                         <select class="form-control" id="openornot" name="isopen">
173                          <option>开放</option>
174                          <option>闭馆</option>
175                       </select>
176                     </div>
177                     <div class="modal-footer">
178                     <button type="button" class="btn btn-primary" data-dismiss="modal">关闭</button>
179                     <button type="button" class="btn btn-primary" onclick="mysubmit()">提交更改</button>
180                     </div>
181                 </form>
182             </div>
183             <!-- /.modal-content -->
184         </div>
185         <!-- /.modal -->
186         </div>
187 </body>
188 </html>

 

posted @ 2015-01-28 09:46  Earendil  阅读(469)  评论(0编辑  收藏  举报