【发布时间】:2019-11-08 15:56:41
【问题描述】:
我正在尝试在 outputDate 类中使用 momentJS 漂亮地显示 inputDate,但我错过了一些使它可能在脚本本身中工作的东西。
为了理解代码,我们的想法是为每个“文章”很好地显示输出 DIV 中的日期,该日期取自输入 DIV。 inputDate 的数量与 outputDate 的数量相同。
<html>
<head>
<meta charset="utf-8" />
<script src="moment-with-locales.js"></script>
<style>
.inputDate {diplay: none;}
</style>
</head>
<body>
<article>
<header>
<p class="inputDate">2018-06-15 11:27:30</p>
<p class="outputDate"></p>
</header>
<div id="question"><p>1.Lorem ipsum dolor sit amet ?</p></div>
<div id="answer"><p>1.Amet sit dolor ipsum lorem.</p></div>
</article>
<article>
<header>
<p class="inputDate">2019-07-18 15:15:45</p>
<p class="outputDate"></p>
</header>
<div id="question"><p>2.Lorem ipsum dolor sit amet ?</p></div>
<div id="answer"><p>2.Amet sit dolor ipsum lorem.</p></div>
</article>
<article>
<header>
<p class="inputDate">2019-08-14 10:23:00</p>
<p class="outputDate"></p>
</header>
<div id="question"><p>3.Lorem ipsum dolor sit amet ?</p></div>
<div id="answer"><p>3.Amet sit dolor ipsum lorem.</p></div>
</article>
<script type="text/javascript">
(function()
{
// get the input date from inputDate class element
var inputDates = document.getElementsByClassName("inputDate").innerHTML;
for (var i = 0; i < inputDates.length; i++) {
// use moment() with input value and a string format pattern as arguments
var moDate[i] = moment(inputDates[i], "YYYY-MM-DD hh:mm:ss");
// display the parsed date in a outputDate class element
var outputDates = document.getElementsByClassName("outputDate");
for (var j = 0; j < inputDates.length; j++) {
// use moment() with input value and a string format pattern as arguments
outputDates[j].innerHTML = moDate[i].locale("fr").format("LLL");
}
}
}
)();
</script>
</body>
</html>
【问题讨论】:
-
一方面,您的 id 不是唯一的
-
你好本戈!您能否将链接或文本添加到您遇到的确切错误?另外,请阅读我们的tour page。
-
是的:在我的原始代码中,Javascript 似乎没有解析任何内容,因此它让 inputDate 按原样显示(因此在没有显示的测试期间使用它的 ISO-8601 扩展日期显示:无)。跨度>
标签: javascript html momentjs