获取日期时间值而不是默认值 dd/mm/yyyy --:-- -- on Edit
Get date-time value instead of default dd/mm/yyyy --:-- -- on Edit
我创建了一个 bootstrap 模式,我从中获取债务信息,现在关于债务创建,我对 dd/mm/yyyy 没有问题 --:- - -- 默认(我可以使用 JS 删除它并放置一个占位符)但是当我编辑债务条目时,我想显示输入的值..
Debt Entry
Editing of debt where I want date values like other fields
<!-- edit Debt date -->
<div class="form-group">
<div class="input-group">
<span class="input-group-addon"><i class="fa fa-calendar"><span style="font-size:1.2em;">Debt Date</span></i></span>
<input class="form-control input-lg" type="datetime-local" id="editDebtDate" name="editDebtDate" required>
</div>
</div>
<!-- edit Return date -->
<div class="form-group">
<div class="input-group">
<span class="input-group-addon"><i class="fa fa-hourglass"><span style="font-size:1.2em;">Return Date</span></i></span>
<input class="form-control input-lg" type="datetime-local" id="editReturnDate" name="editReturnDate" required>
</div>
</div>
我如何使用 JS 获取其他值..
/*=============================================
EDIT Debt
=============================================*/
$(".tables").on("click", ".btnEditDebt", function(){
var idDebt = $(this).attr("idDebt");
var datum = new FormData();
datum.append("idDebt", idDebt);
$.ajax({
url: "ajax/debt.ajax.php",
method: "POST",
data: datum,
cache: false,
contentType: false,
processData: false,
dataType:"json",
success: function(answer){
$("#editDebtor").val(answer["debtor"]);
$("#editDebtAmount").val(answer["amount"]);
$("#editDescription").val(answer["description"]);
$("#editDebtDate").val(answer["debtDate"]);
$("#editReturn").val(answer["returnDebt"]);
$("#editReturnDate").val(answer["returnDate"]);
$("#idDebt").val(answer["id"]);
}
})
})
Ajax
if(isset($_POST["idDebt"])){
$Debt = new AjaxDebt();
$Debt -> idDebt = $_POST["idDebt"];
$Debt -> ajaxEditDebt();
}
public $idDebt;
public function ajaxEditDebt(){
$item = "id";
$value = $this->idDebt;
$answer = ControllerDebt::ctrShowDebt($item, $value);
echo json_encode($answer);
}
这个 ctrShowDebt 进入数据库,return 给我整个记录。
返回对象
> {0: '8', 1: 'Test', 2: '2000', 3: 'Testing Debt', 4: '2022-01-18 23:08:00', 5: '2000', 6: '2022-01-25 23:08:00', 7: 'valid', 8: '2022-01-25 23:08:44', id: '8', debtor: 'Test', amount: '2000', description: 'Testing Debt', debtDate: '2022-01-18 23:08:00', …}
0: "8"
1: "Test"
2: "2000"
3: "Testing Debt"
4: "2022-01-18 23:08:00"
5: "2000"
6: "2022-01-25 23:08:00"
7: "valid"
8: "2022-01-25 23:08:44"
amount: "2000"
date: "2022-01-25 23:08:44"
debtDate: "2022-01-18 23:08:00"
debtor: "Test"
description: "Testing Debt"
id: "8"
returnDate: "2022-01-25 23:08:00"
returnDebt: "2000"
status: "valid"
虽然输入 returns 以本地日期和时间格式输入值,但输入(用于设置输入字段)仍需要采用标准格式,如下所示:
"yyy-mm-ddThh:mm:ss"
edd=document.getElementById("editDebtDate");
edd.value="2022-01-25T12:34";
edd.addEventListener("input",function(){
console.log(edd.value); // =
})
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css">
<input class="form-control input-lg" type="datetime-local" id="editDebtDate" name="editDebtDate">
因此,对于返回的数据,您需要将 " "
替换为 "T"
,然后就完成了:
$("#editDebtDate").val(answer.debtDate.replace(" ","T"))
我创建了一个 bootstrap 模式,我从中获取债务信息,现在关于债务创建,我对 dd/mm/yyyy 没有问题 --:- - -- 默认(我可以使用 JS 删除它并放置一个占位符)但是当我编辑债务条目时,我想显示输入的值..
Debt Entry
Editing of debt where I want date values like other fields
<!-- edit Debt date -->
<div class="form-group">
<div class="input-group">
<span class="input-group-addon"><i class="fa fa-calendar"><span style="font-size:1.2em;">Debt Date</span></i></span>
<input class="form-control input-lg" type="datetime-local" id="editDebtDate" name="editDebtDate" required>
</div>
</div>
<!-- edit Return date -->
<div class="form-group">
<div class="input-group">
<span class="input-group-addon"><i class="fa fa-hourglass"><span style="font-size:1.2em;">Return Date</span></i></span>
<input class="form-control input-lg" type="datetime-local" id="editReturnDate" name="editReturnDate" required>
</div>
</div>
我如何使用 JS 获取其他值..
/*=============================================
EDIT Debt
=============================================*/
$(".tables").on("click", ".btnEditDebt", function(){
var idDebt = $(this).attr("idDebt");
var datum = new FormData();
datum.append("idDebt", idDebt);
$.ajax({
url: "ajax/debt.ajax.php",
method: "POST",
data: datum,
cache: false,
contentType: false,
processData: false,
dataType:"json",
success: function(answer){
$("#editDebtor").val(answer["debtor"]);
$("#editDebtAmount").val(answer["amount"]);
$("#editDescription").val(answer["description"]);
$("#editDebtDate").val(answer["debtDate"]);
$("#editReturn").val(answer["returnDebt"]);
$("#editReturnDate").val(answer["returnDate"]);
$("#idDebt").val(answer["id"]);
}
})
})
Ajax
if(isset($_POST["idDebt"])){
$Debt = new AjaxDebt();
$Debt -> idDebt = $_POST["idDebt"];
$Debt -> ajaxEditDebt();
}
public $idDebt;
public function ajaxEditDebt(){
$item = "id";
$value = $this->idDebt;
$answer = ControllerDebt::ctrShowDebt($item, $value);
echo json_encode($answer);
}
这个 ctrShowDebt 进入数据库,return 给我整个记录。 返回对象
> {0: '8', 1: 'Test', 2: '2000', 3: 'Testing Debt', 4: '2022-01-18 23:08:00', 5: '2000', 6: '2022-01-25 23:08:00', 7: 'valid', 8: '2022-01-25 23:08:44', id: '8', debtor: 'Test', amount: '2000', description: 'Testing Debt', debtDate: '2022-01-18 23:08:00', …}
0: "8"
1: "Test"
2: "2000"
3: "Testing Debt"
4: "2022-01-18 23:08:00"
5: "2000"
6: "2022-01-25 23:08:00"
7: "valid"
8: "2022-01-25 23:08:44"
amount: "2000"
date: "2022-01-25 23:08:44"
debtDate: "2022-01-18 23:08:00"
debtor: "Test"
description: "Testing Debt"
id: "8"
returnDate: "2022-01-25 23:08:00"
returnDebt: "2000"
status: "valid"
虽然输入 returns 以本地日期和时间格式输入值,但输入(用于设置输入字段)仍需要采用标准格式,如下所示:
"yyy-mm-ddThh:mm:ss"
edd=document.getElementById("editDebtDate");
edd.value="2022-01-25T12:34";
edd.addEventListener("input",function(){
console.log(edd.value); // =
})
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css">
<input class="form-control input-lg" type="datetime-local" id="editDebtDate" name="editDebtDate">
因此,对于返回的数据,您需要将 " "
替换为 "T"
,然后就完成了:
$("#editDebtDate").val(answer.debtDate.replace(" ","T"))