2015-04-18 32 views
1

我正在更新一箇舊應用程序,我在日期(DOB)和(當前)將其作爲文本保存到websql數據庫中。我知道websql不是真的被使用了,但在這個時候我不想重新做整個應用程序。 例如如何以格式dd/mmm/yyyy將日期保存爲Websql?

db.transaction(function(tx) { 
          tx.executeSql("CREATE TABLE IF NOT EXISTS personal(ID INTEGER PRIMARY KEY ASC, name TEXT, surname TEXT, added_on DATETIME, note TEXT, dob TEXT, gender TEXT,)", []); 

var dob = document.getElementById("dob").value; 

這是目前保存DOB爲DD/MM/YY這使得難以爲美國的用戶爲一個日期可以顯示爲10年5月6日。 我想把它顯示爲2010年6月5日(拼寫出來的月份)。 這可能嗎?

回答

0

你需要在爲了做到這一點來解析日期值:

var value = "05/06/2010".split("/"); //please note that you'll need to use four digits as a year for years in 2000. Two digit years refer to years from 1900 till 1999. 
 
//Split the date into parts using the /. 
 

 
//Use a month array to display the correct month as text 
 
var months = ["January","February","March","April","May","June","July","August","September", "October","November", "December"]; 
 

 
//Feed the date as year, month-1, day else we will get ackward results. 
 
var date = new Date(value[2], value[1]-1, value[0]); //subtract 1 from the month since it's zero indexed. 
 
document.body.innerHTML += date.getDate() + " " + months[date.getMonth()] + " " + date.getFullYear(); //rewrite the string 
 

 
//In modern browsers (IE11, firefox and Chrome) you can use toLocaleString() option 
 

 
document.body.innerHTML += "<br />"; 
 
var options = { year: 'numeric', month: 'long', day: 'numeric' }; 
 
document.body.innerHTML += date.toLocaleString('en-UK',options);

+0

我發現這... http://www.sqlite.org/lang_datefunc.html 這是否意味着我可以這樣做: dob DATETIME(dob,'unixepoch','localtime') – user2110655

相關問題