javascript - 隐藏/显示按钮在 jquery 中不起作用
问题描述
我需要以下代码的帮助,我创建了一个按钮来显示和隐藏一个 div。我对它应用了一些 jQuery。对我来说一切似乎都很好,但仍然无法正常工作,我似乎找不到原因?
$(document).ready(function() {
$("#closeButton").click(function() {
if ($("#closeButton").val() == "Close Drawer") {
$("#topDrawer").hide();
$("#closeButton").val("Open Drawer");
}
if ($("#closeButton").val() == "Open Drawer") {
$("#topDrawer").show();
$("#closeButton").val("Close Drawer");
}
});
});
<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.1/css/bootstrap.min.css" rel="stylesheet" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="jumbotron" id="topDrawer">
<span id="appName">App Name<span>
</div>
<input type="button" value="Close Drawer" class="btn btn-primary btn-sm" id="closeButton" />
解决方案
你需要一个 else 块。你的两个 if 条件一个接一个地运行。利用
if ($("#closeButton").val() == "Close Drawer") {
$("#topDrawer").hide();
$("#closeButton").val("Open Drawer");
}
else if ($("#closeButton").val() == "Open Drawer") {
$("#topDrawer").show();
$("#closeButton").val("Close Drawer");
}
推荐阅读
- r - 将循环索引评估为变量名,而不是字符串
- python - 如何使用 pandas df 和 cx_Oracle cursor() 更新 Oracle 数据库表的一部分?
- c# - 在 xaml 中更改控件内的预定义样式
- r - get_soils_raster(...) 中的 simpleError:http 错误 400
- javascript - 我正在尝试在 javascript 控制器中使用正则表达式验证字符串?
- reactjs - react如何决定重新渲染组件
- android - 如何从库模块内的待处理意图中获取额外数据?
- powershell - 是否有可以并排比较 CSV 的 PowerShell 脚本?
- java - 构建一个只有 maven 依赖类的 jar 文件
- compiler-construction - 如何从代码段生成后缀符号?