我正在尝试更改ASP.net标签的文本/字体颜色(如果其中包含“-”符号)。
这是一个百分比更改标签,因此负数必须为绿色,正数为红色。
我不断收到 TypeError:document.getElementById(....)为空
我知道window.onLoad并不是最佳实践,这只是为了快速对其进行测试。
谁能告诉我我做错了什么。
window.onload = fillDays;
function fillDays() {
var change = document.getElementById("<%=lblPercentageDifferenceToFillReqCurrentVsPreviousMonth %>").value;
if (change.indexOf(char) = '-') {
document.getElementById("<%=lblPercentageDifferenceToFillReqCurrentVsPreviousMonth %>").style.color = "green";
}
else {
document.getElementById("<%=lblPercentageDifferenceToFillReqCurrentVsPreviousMonth %>").style.color = "red";
}
console.log("fillDays")
};
答案 0 :(得分:2)
您必须使用ClientID
var change = document.getElementById("<%= lblPercentageDifferenceToFillReqCurrentVsPreviousMonth.ClientID %>").value;
假设它是一个实际的控件,例如
<asp:TextBox ID="lblPercentageDifferenceToFillReqCurrentVsPreviousMonth" runat="server"></asp:TextBox>