我有一个产品搜索结果prodArray
用于呈现我的.ejs脚本。它由基于上一个查询的许多对象组成。每个对象将包含一个startDate
字段,它是一个Date()
对象。我希望moment.js以更令人愉快的方式显示此日期(我决定的格式)。我用我的date.toString()使用ejs填充<span>
标记。然后我希望jQuery在文档加载时选择它并以我想要的格式显示。如何让jquery根据当前文本更改文本
这可能不是最好的办法。我愿意接受任何建议。
我.ejs代码如下:
<h1>My List of products</h1>
<% prodArray.forEach(function (product) { %>
<div class="product">
<h2><%= product.name %></h2>
<p>Starting: <span class="moment"><%= product.startDate.toString() %></span><br/>
Places: <%= product.places.max %><br/>
</p>
</div>
<% }) %>
<script>
$(document).ready(function() {
// $('.moment').text(moment($(this).text()).format('MMM Do YYYY hh:mm'))
// DOES NOT RUN.
// $('.moment').text(moment($(this).contents()).format('MMM Do YYYY hh:mm'))
// POPULATES ALL MY PRODUCTS WITH THE SAME DATE
// $('.moment').text(moment($(this).val()).format('MMM Do YYYY hh:mm'))
// POPULATES ALL MY PRODUCTS WITH 'INVALID DATE'
/*
$('.moment').on("ready",function() {
var datestr = $(this).text();
$(this).text(moment(datestr).format('MMM Do YYYY hh:mm'))
})
DOES NOT AFFECT ANYTHING. */
})
</script>
一些我已经试过的东西在脚本中注释掉及其影响写入波纹管它们。有没有一个
$(.moment).nothinghappened(function() {
// blah
})
事件?
如果您有任何建议,我将不胜感激。
有人有类似的问题,这可能会帮助 - http://stackoverflow.com/a/27659332/4214571 –