在表单加载时以 dd/mm/yy 格式用当前日期填充文本框



我正在尝试在表单加载时使用jquery将默认日期设置为 asp.net Web表单中的文本框。为此,我正在使用该功能:

<!DOCTYPE html>
<html>
<body onload="myFunction()">
<input type="text" class="form-control" placeholder="dd/mm/yyyy" autocomplete="off" id="datepicker2" name="datepicker2" />
<p id="demo"></p>
<script>
function myFunction() {
var d = new Date();
var n = d.toLocaleDateString();
document.getElementById("datepicker2").defaultValue = n;
}
</script>
</body>
</html>

但是当我将其添加到我的解决方案日期格式时,更改为 mm/dd/yyyy ,我期待它采用 dd/mm/yyyy 格式。

为什么这个toLocaleDateString();不适用于我的解决方案?datepicker2是一个datepicker.我有一个用于日历视图的功能datepicker(),当我使用鼠标选择日期时,它还以 dd/mm/yyyy 格式提供输出。

那么,如何使用 dd/mm/yyyy 格式的当前日期填充日期选择器2 ????
注意:此问题仅在我使用火狐时发生!!

<!DOCTYPE html>
<html>
<body onload="myFunction()">
<input type="text" class="form-control" placeholder="dd/mm/yyyy" autocomplete="off" id="datepicker2" name="datepicker2" />
<p id="demo"></p>
<script>
function myFunction() {
var d = new Date();
var n = d.toLocaleDateString("en-IN");
document.getElementById("datepicker2").defaultValue = n;
}
</script>
</body>
</html>

更改 toLocateDateString,如下所示

var n = d.toLocaleDateString("en-IN");

toLocaleDateString()在用户的区域设置中显示日期,因此这取决于客户端(因为我在西班牙,它以 dd/mm/yyyy 显示,因为这是我的默认区域设置,但对于美国的人来说会有所不同,例如(。对于您想要执行的操作,请尝试:

function myFunction() {
var d = new Date();
var day = ('0' + d.getDate()).slice(-2);
var month= ('0' + (d.getMonth()+1)).slice(-2);
var year = d.getFullYear(); 
var n = day + '/' + month + '/' + year ;
document.getElementById("datepicker2").defaultValue = n;
}

最新更新