javascript - 为什么 JS 事件“onclick”在第二次点击后起作用,而不是第一次?ASP.MVC
问题描述
有人可以告诉我,为什么标签a
在不打开表格的情况下让我第一次点击,而是选择应该去的地址(在第一时刻表格被隐藏)
第二次点击后,桌子正在打开,我要去。没有标签<a href="#team-@team.Id">
,一键打开。#team-**@team.Id**
- 这很正常,我按周期做了 15 个表,并为每个表 id 制作)
我的代码在视图中
<div id=team-logo-wrapper>
<ul>
@foreach (Team team in Model.Item2)
{
<li>
<div class="team-section-box">
<p class="team-name">@team.Name</p>
<a href="#team-@team.Id">
<img src="@Url.Content(string.Format("~/Images/NBAlogoImg/{0}", team.Path))" class="logo-images" alt="Логотип @team.Name" title="Логотип @team.Name" onclick="ShowTable(@team.Id)" />
</a>
</div>
</li>
}
</ul>
在 CSS 我的显示和可见性
.table-hidden {
margin-top: 50px;
display: none;
visibility: hidden;
}
最简单的脚本
var flag = true;
function ShowTable(teamId) {
var id = "team-" + teamId;
var getElem = document.getElementById(id);
if (flag) {
flag = false;
getElem.style.display = 'none';
getElem.style.visibility = 'hidden';
}
else {
flag = true;
getElem.style.display = 'block';
getElem.style.visibility = 'visible';
}
}
解决方案
当您单击图像时,您也会激活链接。
如果您确实需要该链接,请将其更改为:
<a href="javascript: void(0)">
<img src="@Url.Content(string.Format("~/Images/NBAlogoImg/{0}", team.Path))"
class="logo-images" alt="Логотип @team.Name"
title="Логотип @team.Name"
onclick="ShowTable(@team.Id)" />
</a>
推荐阅读
- php - phplibsec - 循环登录直到连接
- sql-server - 我应该禁用触发器吗?
- javascript - 反应元素类型无效
- python - python3 和请求:仍然收到“sslv3 警报握手失败”
- sql - SQL Server:Error_Line 返回与存储过程行号不匹配的行号
- oracle - 在 Oracle 的 PL/SQL 中使用游标搜索特定数据的特定行
- bash - 如何拆分一行但在 bash 中保留其余行?
- android - 使用 GoogleSignInOptions for Tasks API 请求范围
- mysql - 知道字符串中是否有电话号码
- scala - YARN 上的 Spark 2.3.1:如何以编程方式监控阶段进度?