javascript - 更改文本和隐藏表格

标签 javascript jquery html css

我想将 div 用作“链接”,当单击 div 时,它会切换表格的可见性和 div 的文本更改。 我可以让表格在点击时切换,但我无法让 div 中的文本根据该表格的可见性进行更改。

这是我的代码:

$(document).ready(function () {
  $('.details td').hide();
  $('#link').click(function () {
    $('.details td').toggle();
    if (('.details td').is(':hidden')) {
      $('#link').text('Click For More Detail');
    } else {
      $('#link').text('Click To Hide Details');
    }
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="link" style="Color: blue">Click For More Detail</div>
<div class="details">
  <table class="details">
    <tr>
      <td>details</td>
    </tr>
    <tr>
      <td>more details</td>
    </tr>
  </table>
</div>

最佳答案

这里少了一个$

 if (('.details td').is(':hidden')) {
 ////^

您可以通过查看控制台本身来修复它。无论如何这是一个demo .

你也可以像下面这样优化你的代码,

$(document).ready(function () {
    var details = $('.details td').hide();
    $('#link').click(function () {
        details.toggle();
        $(this).text($('.details td').is(':hidden') ? 'Click For More Detail' : 'Click To Hide Details');
    });
});

关于javascript - 更改文本和隐藏表格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33282791/

相关文章:

javascript - JS 中的专用链表

javascript - 如何使用 jQuery 制作一个简单的 mouseon 弹出工具提示?

javascript - XML 通过属性值删除节点 JavaScript

javascript - 如何使用 jquery 或 javascript 从 textarea 中删除所有以 # 开头的字符?

jquery - 动态创建的内容不绑定(bind) jQuery 事件

javascript - qTip2 的动态背景颜色

javascript - react 将对象添加到对象

javascript - Durandal 模态回调

javascript - Angular ng-show 不根据函数返回值显示/隐藏

javascript - 升级 jquery 后表单发布警告消息