Javascript 如何动态设置时间元素的小时数?

Javascript 如何动态设置时间元素的小时数?,javascript,jquery,date,input,Javascript,Jquery,Date,Input,我有一个带有输入time类型的表单。我想自动设置实际小时数。 此Javascript可以工作,但将固定时间设置为08:15: <script> $("#myelement").val( "08:15" ); </script> $(#myelement)val(“08:15”); 此脚本应获取实际小时数,但将字段设置为空值: <script> var dt = new Date(); var time =

我有一个带有输入
time
类型的表单。我想自动设置实际小时数。 此Javascript可以工作,但将固定时间设置为08:15:

<script>
     $("#myelement").val( "08:15" );
</script>

$(#myelement)val(“08:15”);
此脚本应获取实际小时数,但将字段设置为空值:

<script>
var dt = new Date();
var time = dt.getHours() + ":" + dt.getMinutes();
  $("#myelement").val( time );
</script>

var dt=新日期();
var time=dt.getHours()+“:”+dt.getMinutes();
$(“#myelement”).val(时间);

如何修复它?

您可以这样做:

<script>
var d = new Date();
document.getElementById("myelement").innerHTML = d.toTimeString();
</script>

var d=新日期();
document.getElementById(“myelement”).innerHTML=d.toTimeString();
如果您希望继续使用JQuery

<script>
    var d = new Date($.now());
    alert(d.getDate()+"-"+(d.getMonth() + 1)+"-"+d.getFullYear()+" "+d.getHours()+":"+d.getMinutes()+":"+d.getSeconds());
    </script>

var d=新日期($.now());
警报(d.getDate()+“-”+(d.getMonth()+1)+“-”+d.getFullYear()+“+d.getHours()+”:“+d.getMinutes()+”:“+d.getSeconds());
看看它是如何工作的:


时间输入需要24小时格式。所以值的零填充是有效的

const dt=新日期();
//创建零填充时间值
常量时间=[`${dt.getHours()}`.padStart(2,“0”),
`${dt.getMinutes()}`.padStart(2,“0”)].join(“:”;
const inp=document.querySelector(“#myelement”);
//演示
setTimeout(()=>inp.value=“8:15”,1000);//不起作用
setTimeout(()=>inp.value=“08:15”,2000);//作品
setTimeout(()=>inp.value=time,4000);//作品

它没有显示时间,因为它没有遵循“时间”格式。当时间小于10时,数字的前导应为0。例如09:17

var date = new Date();

var hour = date.getHours();
var min  = date.getMinutes();
hour = (hour < 10 ? "0" : "") + hour;
min = (min < 10 ? "0" : "") + min;
var time = hour + ":" + min; 

$("#myelement").val( time );
var-date=新日期();
var hour=date.getHours();
var min=date.getMinutes();
小时=(小时<10?:“)+小时;
最小值=(最小值<10?:“)+min;
变量时间=小时+“:”+分钟;
$(“#myelement”).val(时间);

来源:

与脚本实际执行的操作相比,您能否提供更多有关所需行为的信息?