当前位置:  开发笔记 > 编程语言 > 正文

禁用点击事件

如何解决《禁用点击事件》经验,为你挑选了1个好方法。

我有一个表行,它指定一个onclick事件,如下所示.

onclick="dispStudRequest('<%=u_studentRequestID%>','<%=rollno%>')"

并且表行中有许多表数据,并且还有多行.

这里我的要求是仅对一个表数据禁用此onclick事件,但对整个行保持活动状态.

是否有任何禁用只有一个表数据的onclick事件.

编辑

表格如下所示.








> Student1
> Student2

并且首先需要禁用onclick事件,这是一个复选框.



1> zer00ne..:

您可以指定具有以下规则的类:

.off { pointer-events: none; }

任何使其无法点击的元素.

使用类在需要时启用单击:

.on { pointer-events: auto; }

该片段通过输入数字说明了这一点1 to 4,然后off or on

function toggleTD(pos, state) {
  var anchors = document.querySelectorAll('a');
  var tgt = anchors[pos - 1];
  if (state === 'on') {
    tgt.classList.remove('off');
    tgt.classList.add('on');
  } else {
    tgt.classList.add('off');
    tgt.classList.remove('on');
  }
  return false;
}

var btn = document.getElementById('btn');

btn.addEventListener('click', function(event) {
  event.preventDefault();
  var inp1 = document.getElementById('inp1').value;
  var inp2 = document.getElementById('inp2').value;
  return toggleTD(inp1, inp2);
}, false);
body {
  width: 100vw;
  height: 100vh;
}
table {
  border: 1px solid #000;
  width: 80%;
  height: 50%;
}
td {
  border: 1px solid red;
}
a {
  width: 100%;
  height: 100%;
  font-size: 1em;
  text-align: center;
  padding-top: calc(50% - .5em);
  display: block;
}
.on {
  pointer-events: auto;
  background-color: green;
}
.off {
  pointer-events: none;
  background-color: red;
}
input {
  width: 2em;
  margin-top: 5px;
  padding: 0 3px;
  text-align: center;
}
CLICK CLICK CLICK CLICK
推荐阅读
mobiledu2402851323
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有