我无法将datetime mysql值传递给datetime本地输入字段
MYSQL数据:1995-10-29 08:00:00
阿贾克斯:
function getTransaction(id){
$.ajax({
type:'POST',
dataType:'json',
data:{id:id},
url: 'queries/getTransactionInfo.php',
success:function(e){
$("#pickup_date").html((e[4]));
$("#return_date").text(e[5]);
}
});
}
的PHP:
$select = $mysqli->prepare('SELECT * from tb_transaction where `id`=?; ');
$select->bind_param('i',$id);
if($select->execute()){
$result=$select->get_result();
$id=0;
while($row=$result->fetch_array()){
$data[]=$row['requestor'];
$data[]=$row['requestor_email'];
$data[]=$row['pickup_location'];
$data[]=$row['destination_location'];
$data[]=$row['from_date'];
$data[]=$row['to_date'];
$data[]=$row['purpose'];
$data[]=$row['no_passenger'];
}
echo json_encode($data);
}else{
}
HTML:
<input type="datetime-local" class='form-control' id="pickup_date">
如何正确通过?我尝试使用.val和.html,但仍然无法正常工作,也尝试使用Date.parse仍然无法正常工作。
格式与定界时间datetime-local
类似。https://developer.mozilla.org/zh-CN/docs/Web/HTML/Element/input/datetime-local2018-06-07T00:00
T
在PHP中,您可以使用DateTime
class设置时间格式。https://www.php.net/manual/zh/datetime.format.php
这是一个例子:
<?php
$time = new DateTime('1995-10-29 08:00:00');
echo $time->format('Y-m-d\TH:i')
//Output is: 1995-10-29T08:00
?>
在您的PHP代码中,
....
....
$timeFormat = 'Y-m-d\TH:i';
while($row=$result->fetch_array()){
$from_date = new DateTime($row['from_date']);
$to_date = new DateTime($row['to_date']);
$data[]=$row['requestor'];
$data[]=$row['requestor_email'];
$data[]=$row['pickup_location'];
$data[]=$row['destination_location'];
$data[]=$from_date->format($timeFormat);
$data[]=$to_date->format($timeFormat);
$data[]=$row['purpose'];
$data[]=$row['no_passenger'];
}
echo json_encode($data);
....
然后它将已经是正确的格式,因此无需在Javascript中对其进行任何处理。
AJAX
....
....
success:function(e){
$("#pickup_date").val(e[4]);
$("#return_date").val(e[5]);
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句