【发布时间】:2020-04-01 15:05:16
【问题描述】:
好的..请注意..我是网络开发的新手..我只是想了解一切是如何工作的..这是不起作用的代码部分:
HTML
<div class="flags" id="CV"><h3>Experienta profesionala</h3>
<p><input type="date" id="angajare" value="2015-03-01" readonly hidden><span id="data_angajare"><script>dataAngajare()</script></span> - Prezent - <strong>Tehnician IT</strong></p>
<p><strong>KraftCom GmbH</strong>, Dorfstr. 17, 86869 Oberostendorf, Germania</p>
<p>Timp lucrat: <span id="timp_lucrat"><script>timpLucrat()</script></span></p>
函数 dataAngajare() 正常工作并显示。
function dataAngajare() {
const months = [
'Januarie',
'Februarie',
'Martie',
'Aprilie',
'Mai',
'Iunie',
'Iulie',
'August',
'Septembrie',
'Octombrie',
'Noiembrie',
'Decembrie'
];
var angajare = document.getElementById('angajare').value;
var dataAngajare = new Date(angajare);
var monthIndex = dataAngajare.getMonth();
var year = dataAngajare.getYear() + 1900;
var monthName = months[monthIndex];
document.getElementById('data_angajare').innerHTML = monthName + ' ' + year;
}
函数 timpLucrat() 然而什么都不做。它没有显示任何内容,我不明白为什么。
funtion timpLucrat() {
var angajare = document.getElementById('angajare').value;
Date dataAngajare = new Date(angajare);
Date today = new Date();
var month_old = dataAngajare.getMonth();
var year_old = dataAngajare.getYear();
var current_month = today.getMonth();
var current_year = today.getYear();
if (current_month > month_old) {
var month_diff = current_month - month_old;
var year_diff = current_year - year_old;
} else if (current_month == month_old) {
var month_diff = 0;
var year_diff = current_year - year_old;
} else {
var month_diff = current_month + 12 - month_old;
var year_diff = current_year - year_old - 1;
}
document.getElementById('timp_lucrat').innerHTML = year_diff + ' ani si ' + month_diff + ' luni';
}
函数存储在 2 个不同的 .js 文件中,这些文件被导入到 header 元素中:
谁能发现问题所在?我真的不知道如何继续.. 谢谢你的时间!
【问题讨论】:
-
只要thisgoogle 搜索就会返回很多结果
-
我应该明白我所做的一切都是错的吗?我知道还有其他方法可以做到这一点,但我想知道我的方法是否可行,如果可以,我做错了什么?另外我不明白为什么其中一个功能起作用而另一个不起作用..我正在寻找有关我的解决方案的建议..而不是其他解决方案..谢谢
-
不,但解决方法是反向思考。因此,您在代码中的最后一条语句不会向 html 附加任何内容。想想为什么。在它前面添加一个
console.log(),检查变量等等。这将揭示你做错了什么。各种链接示例旨在向您展示您可能出错的地方,因此不要将其视为您没有做任何事情的标志。 -
实际上写“功能”而不是“功能”有帮助!感谢您的帮助 :) 现在一切正常!
标签: javascript date