Javascript 为什么对元素调用setClass不会导致元素被重绘?
我为锚元素设置了以下标记,然后使用此代码设置其Javascript 为什么对元素调用setClass不会导致元素被重绘?,javascript,jquery,html,Javascript,Jquery,Html,我为锚元素设置了以下标记,然后使用此代码设置其class: 功能检查TechSubmissionDownload(){ if($(“#ErrorMessage”).val()){ $(“#FinalizeTender.validation摘要错误”).removeClass(“隐藏”); $(“#techSubDownloadLink”).addClass(“已禁用”); } } 首先,在元素上设置disabled并不能单独使其不可见,正如我添加到问题中的片段所示。不过,也有可能是你的CSS
class
:
功能检查TechSubmissionDownload(){
if($(“#ErrorMessage”).val()){
$(“#FinalizeTender.validation摘要错误”).removeClass(“隐藏”);
$(“#techSubDownloadLink”).addClass(“已禁用”);
}
}
首先,在元素上设置disabled
并不能单独使其不可见,正如我添加到问题中的片段所示。不过,也有可能是你的CSS做的。其次,a
元素不能具有disabled
属性,因此问题是moot@RoryMcCrossan我知道,在元素上设置禁用
不仅会使其不可见,而且当我尝试在元素上设置它时,会使该元素不可见。既然我现在知道一个a
不能禁用(谢谢),我将尝试一个父元素。好的,但是要知道禁用的
只适用于表单控件,即输入
,选择
,按钮
etc@ProfK,正如Rory提到的,您的CSS很可能有一个类似于[disabled]的规则{display:none;}
(或类似)并导致禁用的元素disappear@SebastianKaczmarek它们只会消失,直到我单击它们或它们的父对象,然后它们才可见,而且我没有单击处理程序,所以这不能是一个静态css规则。