jquery .text() 无法点击

标签 jquery html

我正在尝试制作一个可切换的 anchor 标签,直到现在实现了这个我希望它在点击时切换 fa 图标和文本。到目前为止 fa 图标切换但无法切换文本任何人都可以告诉我如何去做。

html

<h5 class="text-muted"> Education <a id="btnExp" class="fa fa-plus">ADD</a> </h5>

JS

$('h5 #btnExp').on('click', function () {
    $("h5 #btnExp").toggleClass("fa fa-minus fa fa-plus");
    $("#btnExp").text("123");
});

最佳答案

您需要阻止其默认操作,因为元素是 anchor 。还将您的代码包装在 document-ready handler 中.

$(document).ready(function() {
  $('h5 #btnExp').on('click', function() {
    $("h5 #btnExp").toggleClass("fa fa-minus fa fa-plus");
    $(this).text($(this).text() === '123' ? 'ADD' : '123'); //Also toggle text
    return false;
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<h5 class="text-muted"> Education <a id="btnExp" class="fa fa-plus">ADD</a> </h5>

关于jquery .text() 无法点击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26338214/

相关文章:

jquery - 如何重叠表格中的背景图像

javascript - 带有悬停的下拉多级菜单

javascript - 悬停时临时调整元素的高度

html - CSS - 将图像的边缘与背景图像混合

html - 如何使div从上到下居中?

html - 如何强制 html 表格的高度?

javascript - 使用 REST API 将文件上传到 Firebase 存储

javascript - 在 html() 之前替换() 并在两个字符串之间添加 "&"

javascript - 表行悬停、背景更改和单击但行中的某些子单元格具有不同的属性

html - 如何在div上创建带背景的多色顶部边框?