JSON-数据 Date_Format 不显示
JSON-Data Date_Format doesnt show
你好,抱歉我的英语不好:-)
我的 json 数据有点问题。
我有一个 mysql 数据库。在这个数据库中,我以日期格式保存了数据。
但是日期格式是这样的格式:YYYY.MM.DD。
我需要格式 DD.MM.YYYY。
好吧,我这样更改了请求:
$rs = mysql_query("SELECT event_name, DATE_FORMAT(beginn,'%d.%m.%Y'), DATE_FORMAT(ende,'%d.%m.%Y') FROM party WHERE ende >= CURDATE()ORDER BY beginn ASC");
现在我得到了这个日期格式正确的字符串
{"sommer":[{"event_name":"testevent","DATE_FORMAT (beginn, '%d.%m.%Y')":"28.01.2015","DATE_FORMAT (ende, '%d.%m.%Y')":"30.01.2015"}]}
但现在我的 javascript 遇到了问题。
在我这样做之前:DATE_Format (beginn,'%d.%m.%Y'),我得到了日期(但格式不正确)。
现在我什么都没有了。
这是我的 javascript:
var url="party.php";
var activitydetail = sessionStorage.activitydetail;
$.getJSON(url,function(json){
$.each(json.sommer,function(i,item){
$('<li><a href="#'+item.event_name+'"> '+item.DATE_FORMAT (beginn, '%d.%m.%Y')+' - '+item.event_name+'</a></li>').appendTo('#accor2');
});
});
该函数不再适用于 '+item.beginn+'
并且不适用于 '+item.DATE_FORMAT(beginn, '%d.%m.%Y')+'
有人知道解决方案吗?
提前致谢:-)
你没有准备好你的 json 字符串,所以你有:
{"sommer":[{"event_name":"testevent","DATE_FORMAT (beginn, '%d.%m.%Y')":"28.01.2015","DATE_FORMAT (ende, '%d.%m.%Y')":"30.01.2015"}]}
这意味着您的 属性 名字是 "DATE_FORMAT (ende, '%d.%m.%Y')"
但是在您的 js 代码中您试图获得:
item.beginn
没有意义。
所以我的建议是将您的 json 字符串(我猜是 php 一侧的某处)更改为:
{"sommer":[{"event_name":"testevent","beginn":"28.01.2015","ende":"30.01.2015"}]}
也许你可以在 sql 查询中做到这一点,如果我看到你这样做的方式:
mysql_query("SELECT event_name, DATE_FORMAT(beginn,'%d.%m.%Y') as beginn, DATE_FORMAT(ende,'%d.%m.%Y') as ende FROM party WHERE ende >= CURDATE()ORDER BY beginn ASC");
而且我认为您将能够更轻松地修复您的 js。
你好,抱歉我的英语不好:-)
我的 json 数据有点问题。
我有一个 mysql 数据库。在这个数据库中,我以日期格式保存了数据。 但是日期格式是这样的格式:YYYY.MM.DD。 我需要格式 DD.MM.YYYY。 好吧,我这样更改了请求:
$rs = mysql_query("SELECT event_name, DATE_FORMAT(beginn,'%d.%m.%Y'), DATE_FORMAT(ende,'%d.%m.%Y') FROM party WHERE ende >= CURDATE()ORDER BY beginn ASC");
现在我得到了这个日期格式正确的字符串
{"sommer":[{"event_name":"testevent","DATE_FORMAT (beginn, '%d.%m.%Y')":"28.01.2015","DATE_FORMAT (ende, '%d.%m.%Y')":"30.01.2015"}]}
但现在我的 javascript 遇到了问题。 在我这样做之前:DATE_Format (beginn,'%d.%m.%Y'),我得到了日期(但格式不正确)。 现在我什么都没有了。
这是我的 javascript:
var url="party.php";
var activitydetail = sessionStorage.activitydetail;
$.getJSON(url,function(json){
$.each(json.sommer,function(i,item){
$('<li><a href="#'+item.event_name+'"> '+item.DATE_FORMAT (beginn, '%d.%m.%Y')+' - '+item.event_name+'</a></li>').appendTo('#accor2');
});
});
该函数不再适用于 '+item.beginn+'
并且不适用于 '+item.DATE_FORMAT(beginn, '%d.%m.%Y')+'
有人知道解决方案吗?
提前致谢:-)
你没有准备好你的 json 字符串,所以你有:
{"sommer":[{"event_name":"testevent","DATE_FORMAT (beginn, '%d.%m.%Y')":"28.01.2015","DATE_FORMAT (ende, '%d.%m.%Y')":"30.01.2015"}]}
这意味着您的 属性 名字是 "DATE_FORMAT (ende, '%d.%m.%Y')"
但是在您的 js 代码中您试图获得:
item.beginn
没有意义。
所以我的建议是将您的 json 字符串(我猜是 php 一侧的某处)更改为:
{"sommer":[{"event_name":"testevent","beginn":"28.01.2015","ende":"30.01.2015"}]}
也许你可以在 sql 查询中做到这一点,如果我看到你这样做的方式:
mysql_query("SELECT event_name, DATE_FORMAT(beginn,'%d.%m.%Y') as beginn, DATE_FORMAT(ende,'%d.%m.%Y') as ende FROM party WHERE ende >= CURDATE()ORDER BY beginn ASC");
而且我认为您将能够更轻松地修复您的 js。