如何使用jquery清空最近的表
how to empty nearest table using jquery?
这是我的代码。当我点击click1时,我需要清空下一个div中的表。是否可以通过使用jquery使用最近的同级来清空该表。
我正在使用
obj = $(this);
obj.siblings('table').empty();
<div>
<div class="dropdown busBook">
<a class="triggerBook listItemBook" data-toggle="dropdown" href="javascript:void(0)">Click here</a>
<ul class="dropdown-menu" role="menu" aria-labelledby="dLabel">
<li><a class="emptytable" href="javascript:void(0)" >click1</a></li>
<li><a class="emptytable" id="Tele" href="javascript:void(0)">click2</a></li>
<li><a class="emptytable" " href="javascript:void(0)">click3</a></li>
</ul>
<form>
<input type="hidden" value="<%= user.id %>" i name="user_id" title="Consulting" />
</form>
</div>
</div>
<div class="row hide">
<div class="col-md-12">
<div class="bookhere">
<div id="table-wrapper"><div id="table-scroll">
<a class="next pull-right" id='next_id' href="#">next</a>
<input type="hidden" value="<%= user.id %>" name="user_id" />
<div class="clearfix"></div>
<input type="hidden" value="<%= Date.today + 7.days %>" name="next" />
<table class="table table-bordered table-condensed" id='table_id'>
<tr>
<% (Date.today..Date.today + 8.days).first(7).each do |display| %>
<th><%= display.strftime("%a") %>(<%= display.strftime("%d/%m") %>)</th>
<% end %>
</tr>
<tr><td>Date here</td></tr>
</table>
</div>
</div>
基于HTML标记,您可以使用:
$('a.emptytable').closest('div.dropdown').parent().next().find('table').empty();
试试这个。。
$(".emptytable" ).click(function() {
$(.dropdown).parent().next().find('table').empty();
});
试试这个,它会对你有所帮助。
$(function() {
$('#myDiv1').next('div').children().html('');
});
上述功能的HTML是
<div id="myDiv1">
<table>
<tr>
<td>1</td><td>Sample Data</td>
</tr>
<tr>
<td>2</td><td>Sample Data</td>
</tr>
<tr>
<td>3</td><td>Sample Data</td>
</tr>
<tr>
<td>4</td><td>Sample Data</td>
</tr>
</table>
</div>
<div id="myDiv2">
<table>
<tr>
<td>1</td><td>Sample Data</td>
</tr>
<tr>
<td>2</td><td>Sample Data</td>
</tr>
<tr>
<td>3</td><td>Sample Data</td>
</tr>
<tr>
<td>4</td><td>Sample Data</td>
</tr>
</table>
</div>
$('a').closest('.div_class_name').siblings('table').empty();
试试这个。
@Felix给出了一个非常好的解决方案。但是,我建议你不要在任何地方使用这种方法。它可能会给你带来意想不到的结果。更好的方法是设置一些数据属性,而不是使用它们来删除关联的表。这样,您就可以完全控制清空哪些表。
HTML
<a class="emptytable" id="Tele" data-table="#table-1">Empty table 1</a>
<a class="emptytable" id="Tele" data-table="#table-2">Empty table 2</a>
...
<table id="table-1">...</table>
<table id="table-2">...</table>
...
Javascript
$(function(){
$('.emptytable').click(function(){
$($(this).data('table')).empty();
});
})
相关文章:
- 函数触发时清空数组
- 清空$_GET和$_POST,表单使用form.submit()
- 在 javascript 事件单击后清空输入
- 清空并附加元素的扩展高度
- 无法在提交之间清空数组
- 输入字段在 jQuery 的 slideUp()/slideDown() 上清空
- 提交按钮将清空输入的值
- 清空表中的所有字段
- javascript清空一个数组并进行验证
- 从DOM中清空一系列元素的最快方法是什么
- Sails.js beforeValidate()清空值参数
- 清空JS中的字符串
- 未捕获的类型错误:this.reset不是函数-在ajax调用后清空输入时出错
- 在设置标头之前清空localStorage
- 在 ASP.NET 中,您可以字符串.清空焦点中的文本框
- 如何清空数组
- 如何在下拉事件更改时使用 jquery 清除或清空列表框
- 我想清空 2 个输入类型文本的值,选中(框)
- 如何在以下代码中在 AngularJS 中成功提交后清空(或重置)表单上的所有输入字段
- 如何使用jquery清空最近的表