div id 匹配 getFullYear 日期的公式
Formula for div id to match a getFullYear date
我有一些待处理的代码无法运行,因为我认为我正在比较 if 语句中的两种不同类型的数据,但我终究无法弄清楚如何让它们与每个数据进行比较其他妥妥的。我想获取当前年份并将其与同样标有年份的 div 标签的 ID 进行比较。我的示例代码(使用 W3 fiddler 进行测试):
<!DOCTYPE html>
<html>
<body onload="myFunction()">
<h2>Test Code</h2>
<p id="2021"></p>
<script>
function myFunction() {
var actualYear = new Date().getFullYear();
var divName = document.getElementById(actualYear);
if (divName = actualYear) {
document.writeln(actualYear);
document.writeln(divName);
}
}
</script>
</body>
</html>
此代码正确获取了 actualYear 的“2021”这一完整年份,并且它从 divName 的“2021”的 div id 中提取了正确的文本,但是当我更改if 语句包含“==”以要求完全匹配公式中断,即使我从上面的代码片段中得到完全匹配。我尝试将 parseInt 添加到 divName 代码,但这不起作用。我在末尾添加了 .innerHTML ,这确实有效,但出于我的目的,我不能在本节的 div 标签之间有任何 HTML,所以这不是一个选项。有什么建议或巧妙的解决方法吗?
您的变量 divName
不包含 id 属性,而是包含整个 HTMLElement
。所以你需要把它改成
var actualYear = new Date().getFullYear();
var divName = document.getElementById(actualYear).getAttribute("id");
if (divName === actualYear) {
document.writeln(actualYear);
document.writeln(divName);
}
我有一些待处理的代码无法运行,因为我认为我正在比较 if 语句中的两种不同类型的数据,但我终究无法弄清楚如何让它们与每个数据进行比较其他妥妥的。我想获取当前年份并将其与同样标有年份的 div 标签的 ID 进行比较。我的示例代码(使用 W3 fiddler 进行测试):
<!DOCTYPE html>
<html>
<body onload="myFunction()">
<h2>Test Code</h2>
<p id="2021"></p>
<script>
function myFunction() {
var actualYear = new Date().getFullYear();
var divName = document.getElementById(actualYear);
if (divName = actualYear) {
document.writeln(actualYear);
document.writeln(divName);
}
}
</script>
</body>
</html>
此代码正确获取了 actualYear 的“2021”这一完整年份,并且它从 divName 的“2021”的 div id 中提取了正确的文本,但是当我更改if 语句包含“==”以要求完全匹配公式中断,即使我从上面的代码片段中得到完全匹配。我尝试将 parseInt 添加到 divName 代码,但这不起作用。我在末尾添加了 .innerHTML ,这确实有效,但出于我的目的,我不能在本节的 div 标签之间有任何 HTML,所以这不是一个选项。有什么建议或巧妙的解决方法吗?
您的变量 divName
不包含 id 属性,而是包含整个 HTMLElement
。所以你需要把它改成
var actualYear = new Date().getFullYear();
var divName = document.getElementById(actualYear).getAttribute("id");
if (divName === actualYear) {
document.writeln(actualYear);
document.writeln(divName);
}