2012-06-22 2 views
0
std = new Date("2012-06-22 00:05:00"); 
std_string = std.getHours() + ":" + std.getMinutes(); 

В мобильном браузере (Android, Blackberry 7) показано: «Нан: Нан», почему?Формат даты на мобильном браузере

Как я могу это исправить?

"2012-06-22 00:05:00" родом из HTTP WebService и MYSQL формат даты и времени

+0

Что-то делать с Javascript, не нравится ваш формат времени, я думаю. У меня была аналогичная проблема с диалоговым окном JQuery datepicker. Я попытаюсь выкопать мой код и посмотреть, найду ли я точное решение ... – Shenaniganz

+0

Какую версию Android вы используете? – Zakaria

ответ

2

Вы пытались создать объект так:

var dateWS = "2012-06-22 00:05:00"; 
var date = dateWS.split(" ")[0].split("-"); 
var time = dateWS.split(" ")[1].split(":"); 

var dateObj = new Date(date[0],date[1],date[2],time[0],time[1],time[2]); 
var std_string = dateObj .getHours() + ":" + dateObj .getMinutes(); 
alert(std_string); 

I Jsfiddled это так, вы можете попробовать его прямо в вашем браузере: http://jsfiddle.net/PyGgb/

EDIT: Я сделал тест на моем Android 2.3 и он работает:

enter image description here

+0

Я не могу. Эта дата исходит из WebService – sparkle

+0

@ user1028100: если это произошло из веб-службы, получите значение в переменной, и вы можете сделать то, что вам нужно сделать, прежде чем использовать значение. @Zakaria: Первая строка не нужна. Вы можете заменить 'dateObj' на' std', и это нормально. – rcdmk

+0

@rcdmk спасибо за ваше замечание. Я удалил бесполезную строку. – Zakaria

0

Я считаю, что проблема - «. Yous может использовать '/' вместо '-'.

заменить ваш "2012-06-22 00:05:00" '-' to '/'.

var temp = "2012-06-22 00:05:00".replace('-','/'); 
    var std = new Date(temp); 
    var std_string = std.getHours() + ":" + std.getMinutes(); 
    alert(std_string); 
Смежные вопросы