Javascript 在innerHTML的部分下划线

Javascript 在innerHTML的部分下划线,javascript,css,innerhtml,Javascript,Css,Innerhtml,我正在建立一个表格,显示未来10天的日期。我需要在表中插入日期、月份和年份。我使用此JavaScript代码实现以下目的: document.getElementById(i).innerHTML = weekday + " " + date + " " + month + " " + year; 我的问题: 我想在月份下面画线,但不画其他值。 我该怎么修这个?我已经尝试过在变量中加入一个CSS类,但是我一直很失败 如果需要更多详细信息或代码,请询问。这是我第一次在这里发布javascript

我正在建立一个表格,显示未来10天的日期。我需要在表中插入日期、月份和年份。我使用此JavaScript代码实现以下目的:

document.getElementById(i).innerHTML = weekday + " " + date + " " + month + " " + year;
我的问题:

我想在月份下面画线,但不画其他值。 我该怎么修这个?我已经尝试过在变量中加入一个CSS类,但是我一直很失败


如果需要更多详细信息或代码,请询问。这是我第一次在这里发布javascripting,大约一个月了。

这不是一个优雅的解决方案,但很有效:

document.getElementById(i).innerHTML = weekday + " " + date + " <span style='text-decoration: underline;'>" + month + "</span> " + year;
document.getElementById(i).innerHTML=weekday+“”+date+“”+month+“”+year;

既然innerHTML意味着可以将html放在那里,为什么不给它加上标记呢

document.getElementById(i).innerHTML = weekday + " " + date + " <u>" + month + "</u>" + year;
document.getElementById(i).innerHTML=weekday+“”+date+“”+month+“”+year;

我刚刚使用了下划线标记:)

您可以使用HTML
标记来实现这一点。例如:

document.getElementById(i).innerHTML = weekday + " " + date + " <u>" + month + "</u> " + year;

下面是JSFIDLE>

您确实希望使用CSS类来赋予元素的该部分含义并为其设置样式。使用给定的类将其包装在
中,然后通过样式表应用样式

document.getElementById(i).innerHTML = weekday + " " 
                                       + date
                                       + " <span class='month'>" + month + "</span> "
                                       + year;
使用语义类,而不是特定的标记或内联样式,可以轻松地在全局基础上更改此类显示的样式,而不必更新样式出现的每个位置


编辑:显然您最了解您的应用程序,但我会避免在链接或约定(如某些标题)之外的地方加下划线。这可能会让用户非常困惑,因为浏览器中的下划线通常表示某个东西是可单击的链接。这似乎不是你想要的,但我可能错了。

这就是我试图实现的目标,但失败了,现在我发现我把标签放错了位置。我试了一个月。非常感谢:)我认为
标记已经被弃用了,也就是说,你不应该使用它。我(显然,看到我的答案)喜欢使用类方法,但它应该是语义的,传达元素是什么,而不是应该应用什么样式。如果以后您决定月份名称应为斜体,则必须返回并更改正在应用的类,而不是简单地更改应用于月份名称的类的样式。内联样式?真正地我想如果它是一个具有良好定义语义的插件,也许,但如果可能的话,我真的会选择基于类的方法。
span.underline { text-decoration: underline; }
document.getElementById(i).innerHTML = weekday + " " 
                                       + date
                                       + " <span class='month'>" + month + "</span> "
                                       + year;
.month { text-decoration: underline; }