代码优先:
<style type="text/css">
.label1 {
font-weight: bold;
color: #006699;
}
</style>
<script type="text/javascript">
function test(k) {
document.getElementById(k).style = label1; <--this does not work
}
</script>
我想知道是否可以使用.CSSclass设置元素(在代码隐藏文件(Default.aspx.cs)中定义的标签)的样式?
明白我可以应用.style.color
来设置颜色等,但是想先看看上面是否可行。
从代码隐藏调用函数test(k)。测试工作。
答案 0 :(得分:1)
document.getElementById(k).style = label1; <--this does not work
没有理由,你没有名为label1
的JavaScript变量,并且你不会通过分配给.style
来申请课程(虽然我可以理解为什么你会想到这样做。)
您的CSS定义了一个类。要在this上modern browsers使用classList
:
document.getElementById(k).classList.add("label1");
对于IE9及更早版本等旧版浏览器,请使用className
,这是一个以空格分隔的类列表(如HTML class
属性):
document.getElementById(k).className += " label1";
从代码隐藏调用函数test(k)。
确保k
是元素的客户端 ID。 (我认为服务器控件上客户端ID的属性创造性地命名为ClientID
,但ASP.Net不是我的事,如果这是错误的技术,我会道歉。)