表元素和Javascript,类名不变

表元素和Javascript,类名不变,javascript,css,classname,Javascript,Css,Classname,我使用样式化的元素创建了一个表。 当我点击一个元素时,它会被选中并以蓝色突出显示 我尝试创建一点javascript,以确保一次只能有一个项目是蓝色的,虽然我认为它会工作,但有些地方不正确 有人能看一下并可能诊断出这把小提琴的错误之处吗: 有人能看一下并可能诊断出什么是错误的吗 在单击事件中,您将背景颜色设置为蓝色 您从不清除任何其他元素的背景色,因此,一旦它是蓝色,它就是蓝色的在您的问题中,您提到了span标记,而在JSFIDLE中没有span标记 我所理解的只是点击的项目应该是蓝色的,其他项

我使用样式化的
元素创建了一个表。 当我点击一个元素时,它会被选中并以蓝色突出显示

我尝试创建一点javascript,以确保一次只能有一个项目是蓝色的,虽然我认为它会工作,但有些地方不正确

有人能看一下并可能诊断出这把小提琴的错误之处吗:

有人能看一下并可能诊断出什么是错误的吗

在单击事件中,您将背景颜色设置为蓝色


您从不清除任何其他元素的背景色,因此,一旦它是蓝色,它就是蓝色的

在您的问题中,您提到了span标记,而在JSFIDLE中没有span标记

我所理解的只是点击的项目应该是蓝色的,其他项目应该有他们的默认颜色。让我知道,如果我更新的是你正在看的

function RiskMatrix(a) {

if (rmval) {
    //rmvalprev = rmval;
    document.getElementById(rmval).style.background = '';
    //rmvalprevstyle = document.getElementById(rmval).className;
}

rmval = a.id;

document.getElementById(rmval).style.background = '#1e86fb';




   // if (rmvalprev) {
      //  rmvalprev.className = rmvalprevstyle;
   // }



}

嗨,据我所知,我试图将单击的span的id和类名保存为rmvalprev,在保存背景之前,然后在最后的if语句的代码末尾,它应该重置颜色?当您直接向元素添加背景颜色时,类名称不相关-CSS优先规则apply为选定项创建了一个子类,并调整代码以尝试应用类使元素变蓝,我的代码的工作方式就像我为每个变量设置了警报一样,它收集正确的信息,但应用类名不是工作文档;rmvalprev.className=rmvalprevstyle;请在帖子中添加相关代码。问题在于,内联样式会覆盖样式表。因此,您必须将上一个“蓝色元素”的背景样式设置为空字符串。这就解决了这个问题!很抱歉,我原本把所有的按钮都作为跨度,我想经过几次反复尝试后,我改成了按钮,这是一个漫长的夜晚。