解释// 删除选中行 $("#deleteSelected").click(function() { if (confirm("确定要删除选中行吗?")) { var ids = []; $(".checkItem:checked").each(function() { ids.push($(this).closest("tr").find("td:eq(1)").text()); $(this).closest("tr").remove(); }); $("#checkAll").prop("checked", false); // 发送AJAX请求删除数据库中的数据 $.ajax({ url: "http://localhost/IKEA/delete_message.php", type: "POST", data: { ids: ids }, success: function(result) { alert(result); } }); } }); // 搜索表格内任意字 $("#searchButton").click(function() { var input = $("#searchInput").val().toLowerCase(); $("#messageTable tbody tr").each(function() { if ($(this).text().toLowerCase().indexOf(input) >= 0) { $(this).show(); } else { $(this).hide(); } }); });
时间: 2024-04-03 11:30:38 浏览: 151
这段代码是一个基于jQuery的前端脚本,实现了删除选中行和搜索表格的功能。
当用户点击id为"deleteSelected"的元素时,会出现一个确认框,如果用户确认删除,则会遍历所有选中的行,获取它们对应的id并保存到数组ids中。然后,将这些选中的行从表格中删除,并发送一个AJAX请求,将这些id传递给后端进行删除。
当用户点击id为"searchButton"的元素时,会获取输入框中的文本,将所有表格行遍历一遍,如果发现文本中的任意字符都可以在该行中找到,则显示该行,否则隐藏该行。
相关问题
代码做一个javaweb1实现反选效果 2 点击删除如果本行复选框没选中提示消息不能删除;否则确认框提示是否删除选择是删除该行 3 批量删除:判断有没有选中没有提示信息否则删除选中行
好的,下面是一个示例代码,实现了您的需求:
HTML代码:
```
<table id="myTable">
<thead>
<tr>
<th>编号</th>
<th>姓名</th>
<th>年龄</th>
<th>操作</th>
<th><input type="checkbox" id="selectAll">全选</th>
</tr>
</thead>
<tbody>
<tr>
<td>001</td>
<td>张三</td>
<td>20</td>
<td><button class="deleteBtn">删除</button></td>
<td><input type="checkbox" class="selectOne"></td>
</tr>
<tr>
<td>002</td>
<td>李四</td>
<td>25</td>
<td><button class="deleteBtn">删除</button></td>
<td><input type="checkbox" class="selectOne"></td>
</tr>
<tr>
<td>003</td>
<td>王五</td>
<td>30</td>
<td><button class="deleteBtn">删除</button></td>
<td><input type="checkbox" class="selectOne"></td>
</tr>
</tbody>
</table>
<button id="deleteSelected">批量删除</button>
<button id="reverseSelect">反选</button>
```
JavaScript代码:
```
// 反选
$('#reverseSelect').click(function() {
$('.selectOne').each(function() {
$(this).prop('checked', !$(this).prop('checked'));
});
});
// 单行删除
$('.deleteBtn').click(function() {
var checkbox = $(this).parents('tr').find('.selectOne');
if (!checkbox.prop('checked')) {
alert("请选中要删除的行");
} else {
if (confirm("是否删除该行?")) {
$(this).parents('tr').remove();
}
}
});
// 全选
$('#selectAll').click(function() {
$('.selectOne').prop('checked', $(this).prop('checked'));
});
// 批量删除
$('#deleteSelected').click(function() {
var flag = false;
$('.selectOne').each(function() {
if ($(this).prop('checked')) {
flag = true;
$(this).parents('tr').remove();
}
});
if (!flag) {
alert("请选中要删除的行");
}
});
```
解释一下代码:
1. 反选:给“反选”按钮绑定一个点击事件,遍历所有复选框,使用prop()方法修改其checked属性值,实现反选效果。
2. 单行删除:给“删除”按钮绑定一个点击事件,获取该行对应的复选框,如果未选中,则弹出提示框;否则弹出确认框,用户点击确认后,使用remove()方法将该行从表格中删除。
3. 全选:给全选复选框绑定一个点击事件,遍历所有复选框,使用prop()方法修改其checked属性值,实现全选效果。
4. 批量删除:给“批量删除”按钮绑定一个点击事件,遍历所有复选框,如果选中,则使用remove()方法将该行从表格中删除。如果没有选中任何复选框,则弹出提示框。
希望这个示例能够帮助您实现您的需求。
代码实现jquery批量删除按钮
可以使用以下代码实现jquery批量删除按钮:
HTML代码:
```
<table>
<thead>
<tr>
<th><input type="checkbox" id="checkAll"></th>
<th>Name</th>
<th>Email</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<tr>
<td><input type="checkbox" class="checkItem"></td>
<td>John Doe</td>
<td>john@example.com</td>
<td><button class="btnDelete">Delete</button></td>
</tr>
<tr>
<td><input type="checkbox" class="checkItem"></td>
<td>Jane Doe</td>
<td>jane@example.com</td>
<td><button class="btnDelete">Delete</button></td>
</tr>
<tr>
<td><input type="checkbox" class="checkItem"></td>
<td>Bob Smith</td>
<td>bob@example.com</td>
<td><button class="btnDelete">Delete</button></td>
</tr>
</tbody>
</table>
```
jQuery代码:
```
$(document).ready(function() {
// Check all checkboxes when checkAll checkbox is clicked
$('#checkAll').click(function() {
$('.checkItem').prop('checked', $(this).prop('checked'));
});
// Delete selected rows when btnDelete button is clicked
$('.btnDelete').click(function() {
if (confirm('Are you sure you want to delete selected rows?')) {
$('.checkItem:checked').each(function() {
$(this).closest('tr').remove();
});
}
});
});
```
这段代码会为表格中每个删除按钮添加点击事件,并提示用户是否确定删除选定的行。如果用户点击“确定”,则会遍历选中的复选框,并删除相应的行。使用全选复选框可以方便地选择所有行。
阅读全文