Javascript 更改存储在文本字段中的日期格式

Javascript 更改存储在文本字段中的日期格式,javascript,Javascript,我有一个通用的日期字段,显示DD-MM-YYYY,但数据库中存储的实际值是yyy-MM-DD。问题是,这个值也被传输到一个简单文本字段(具有只读属性)内的远程服务器,我想在这个字段上进行交互,以更改他在DD-MM-YYYY中的显示 我不想触动数据库结构中的某些东西来改变日期的存储方式。我没有访问这个远程服务器的html的权限,但我可以通过将代码放入JS文件来修改一些字段 我看了这里和一些论坛,但我没有找到一个解决方案,由于我的javascript知识贫乏,我陷入困境。谢谢。使用内置javascr

我有一个通用的日期字段,显示
DD-MM-YYYY
,但数据库中存储的实际值是
yyy-MM-DD
。问题是,这个值也被传输到一个简单文本字段(具有只读属性)内的远程服务器,我想在这个字段上进行交互,以更改他在
DD-MM-YYYY
中的显示

我不想触动数据库结构中的某些东西来改变日期的存储方式。我没有访问这个远程服务器的html的权限,但我可以通过将代码放入JS文件来修改一些字段


我看了这里和一些论坛,但我没有找到一个解决方案,由于我的javascript知识贫乏,我陷入困境。谢谢。

使用内置javascript函数构建所需的格式。将字符串解析为日期对象,并使用以下函数创建所需的格式

getDate() -> to get date
getMonth() -> to get  month
getFullYear() -> to get  year
范例

//var birth_date = document.getElementById('birth_date');
//use birth_date instead of hard coded date
//var day = new Date(Date.parse(birth_date));
var day = new Date(Date.parse("2013-09-02"));
alert(day.getDate() + "-" + day.getMonth() + "-" +  day.getFullYear());


//set value

document.getElementById('birth_date').value = day.getDate() + "-" + day.getMonth() + "-" +  day.getFullYear();

使用内置javascript函数构建所需的格式。将字符串解析为日期对象,并使用以下函数创建所需的格式

getDate() -> to get date
getMonth() -> to get  month
getFullYear() -> to get  year
范例

//var birth_date = document.getElementById('birth_date');
//use birth_date instead of hard coded date
//var day = new Date(Date.parse(birth_date));
var day = new Date(Date.parse("2013-09-02"));
alert(day.getDate() + "-" + day.getMonth() + "-" +  day.getFullYear());


//set value

document.getElementById('birth_date').value = day.getDate() + "-" + day.getMonth() + "-" +  day.getFullYear();

假设你有一个字符串
var s='1989-05-06'。您可以分别获得年、月和日,如下所示:

var my_date = s.split('-');
var year = my_date[0];
var month = my_date[1];
var day = my_date[2];
然后,您可以显示下面的字符串(或以任何格式组织日期、月份和年份):


假设您有一个字符串
var s='1989-05-06'。您可以分别获得年、月和日,如下所示:

var my_date = s.split('-');
var year = my_date[0];
var month = my_date[1];
var day = my_date[2];
然后,您可以显示下面的字符串(或以任何格式组织日期、月份和年份):


我们可以使用简单的javascript函数来实现这一点。 我们只需要传递服务器日期(YYYY-MM-DD),它将返回预期日期(DD-MM-YYYY)格式

例如:-

     convertDate('2013-09-02'); // (YYYY-MM-DD) format
输出:-

    '02-09-2013' //(DD-MM-YYYY) format

希望这将帮助您……

好吧,我们可以使用简单的javascript函数来实现这一点。 我们只需要传递服务器日期(YYYY-MM-DD),它将返回预期日期(DD-MM-YYYY)格式

例如:-

     convertDate('2013-09-02'); // (YYYY-MM-DD) format
输出:-

    '02-09-2013' //(DD-MM-YYYY) format

希望这将帮助您…

您可以捕获表单提交事件并在发送前更改其值:

假设您有一个表单
#myForm

var form = document.getElementById('myForm');
要捕获提交:

try {
    form.addEventListener("submit", changeValue, false);
} catch(e) {
    form.attachEvent("onsubmit", changeValue); //Internet Explorer 8-
}
现在,您可以在原地更改所需的值

function changeValue(){
    var field = document.getElementById('idOfField');
    field.value = field.value.split('-').reverse().join('-');
}

您可以捕获表单提交事件并在发送前更改其值:

假设您有一个表单
#myForm

var form = document.getElementById('myForm');
要捕获提交:

try {
    form.addEventListener("submit", changeValue, false);
} catch(e) {
    form.attachEvent("onsubmit", changeValue); //Internet Explorer 8-
}
现在,您可以在原地更改所需的值

function changeValue(){
    var field = document.getElementById('idOfField');
    field.value = field.value.split('-').reverse().join('-');
}

这可能会帮助您尝试这些链接[[尝试这些链接[link][link]这可能会帮助您尝试这些链接[[尝试这些链接[link][link]您能给出一个代码示例吗?例如,我有一个代码:var birth\u date=document.getElementById('birth\u date'));你能完成它吗?好的,但是没有警报框怎么办?我只想在没有其他任何东西的情况下更改显示..我尝试了,但这不起作用。正如我所说的,值在一个简单的文本字段中。因此,重新排列内容是很重要的,我想使用“日期”变量无效。无法为此任务使用Innerhtml之类的东西吗?更新了JS Fiddle,它可以工作。检查Fiddle。它通过转换类型再次设置输入值。请给出一个代码示例?例如,我有以下代码:var birth_date=document.getElementById('birth_date'));你能完成它吗?好的,但是没有警报框怎么办?我只想在没有其他任何东西的情况下更改显示..我尝试了,但这不起作用。正如我所说的,值在一个简单的文本字段中。因此,重新排列内容是很重要的,我想使用“日期”变量无效。无法为此任务使用Innerhtml之类的东西吗?更新了JS FIDLE,它可以工作。检查FIDLE。它通过转换类型再次设置输入值