我对JSON& JavaScript,所以如果我似乎没有做足够的研究,我会道歉。参考以下链接:
http://jsbin.com/imekip/edit#javascript,live
我想知道如何修改代码:
我们的下一场演出将于2012-04-18在美国加利福尼亚州旧金山的菲尔莫尔举行。
要:
我们的下一场演出将于5月4日在旧金山的菲尔莫尔举行。
提前非常感谢你。
答案 0 :(得分:1)
需要一些代码才能完成 1)在每个循环中,您必须存储日期变量并使用日期对象将每月的名称分配给月份的编号 2)还要检查使用某些字符串函数将日期转换为字符串 3)最少但不是最后,必须切割位置,直到第一个逗号出现,我使用了分割功能,因为你可以在其他情况下使用其余的字符串 完整的工作演示在这里 http://jsfiddle.net/theodore/WrCLW/2/
答案 1 :(得分:1)
<强> HTML 强>
<ul id="ulId">
<li>Our next gig is at
<a href='#'>
The Fillmore, San Francisco, CA, US on 2012-05-18
</a>
</li>
<li>Our next gig is at
<a href='#'>
The Fillmore, San Francisco, CA, US on 2012-10-15
</a>
</li>
</ul>
JS
var months=['January','February','March','April','May', 'June', 'July', 'August','September','October','November','December'];
var rgx = /(\d{4})-(\d{2})-(\d{2})/;
function changeDate(ul)
{
for(i=0;i<ul.childNodes.length;i++)
{
if(ul.childNodes[i].tagName=="LI")
{
var link=ul.childNodes[i].getElementsByTagName('a')[0];
var txt=link.innerHTML;
var r = txt.match(rgx);
var dateArr=r[0].split('-');
var m= parseInt(dateArr[1])-1;
var d=dateArr[2];
var dt= d+'th '+months[m];
var final=txt.replace(r[0] ,dt);
link.innerHTML=final;
}
}
}
changeDate('ulId'); // call the function and pass the ul id as paremeter.