我需要將3個輸入連接起來,并在Angular typescript中產生一個代表日期的值。
這是我的html代碼:
<td>/span>
< input type="text"/span> placeholder="jj" class="form-control" formControlName="jj" id="jj" name="jj" [hidden]="! chkEnable.checked" style="width:50%" />
</td>
<td>
< input type="text"/span> placeholder="mm" class="form-control" formControlName="mm" id="mm" name "mm attr">name="mm" style="width: 50%" [hidden] ="! chkEnable.checked">
</td>
<td>
< input type="text"/span> placeholder="aa" class="form-control" formControlName="aa" id="aa" name "aa" name "aa attr">name="aa" style="width: 50%" [hidden] ="! chkEnable.checked">
</td>
我的表格組:
this.dateForm = this.formBuilder.group({
jj: [''/span>, Validators.required,Validators.max(2)]。
mm: [''/span>, Validators.required]。
aa: [''/span>, Validators.required].
});
預先感謝!
uj5u.com熱心網友回復:
你可以像這樣訪問你的表單值
public concatinateAll() {
const concat = this.dateForm.controls['jj'/span>].value '/'
this.dateForm.controls['mm'].value '/'
this.dateForm.controls['aa'].value。
console.log(concat)。
}
uj5u.com熱心網友回復:
監聽表單組的值變化。每當任何控制元件的值發生變化時,這將觸發。你可以在這上面執行任何你想要的東西。
ngOnInit(/span>) {
this.dateSubscription = this.dateForm.valueChanges.
.pipe(map(this.formatDate)
.subscribe(d => console。 log('MM/DD/YY', d))。
}
銷毀時取消訂閱
ngOnDestroy(){
this.dateSubscription.unsubscribe()。
}
Format Date方法
formatDate({ aa, jj, mm }: any) 。string {
return new Date(jj '/'/span> mm '/'/span> aa) 。 toLocaleString()。
}
提交表單
< form [formGroup]="dateForm" (ngSubmit)="onSubmit()"> //span>
在Ts,
onSubmit()。void {
//所有表單資料。
const fromData = this.dateForm.getRawValue()。
///生成日期出來。
const date = this.formatDate(fromData)。
//通過添加帶有日期的formdata創建請求。
const request = { ...fromData, date };
console.log(request)。
//API呼叫或其他操作。
}
把這個js日期作為字串傳給laravel,在laravel中把它轉換成Date。 像這樣的事情......
$jsDate = '11/12/2021, 12:00:00 AM'/span>;
echo date('Y-m-d', strtotime($jsDate) )。)
//或
$date=date_create("12/25/2021, 12:00:00 AM"/span>)。
echo date_format($date,"Y/m/d H:i:s") 。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/310913.html
標籤:
下一篇:兩個日期之間的行數
