我有一点角度,为模糊功能提供日期。在Chrome(v62)中,它可以正常工作,但似乎不适用于Firefox(57)。
// HTML
<input #expirationDate type="date" max="2999-12-31" class="form-control" name="ChargeExpirationDate" [ngModel]="charge.ExpirationDate" (blur)="editCharge(charge, 'ExpirationDate', expirationDate.value)"/>
// TS组件
editCharge(charge: object, property: string, newValue: any): void {
console.log(newValue);
console.log(charge);
//other stuff
charge[property] = newValue;
}
如果您键入日期并且输入失去焦点
在Chrome中:调用该函数,newValue
包含日期字符串。
在Firefox中:该功能会触发,但newValue
设置为""
。更奇怪的是,console.log(charge);
的结果实际上将包含字符串,但仅在editCharge
函数完成后才能观察到。
有没有办法在Firefox中的模糊事件之前正确设置newValue
?我不想使用ngModelChange
,因为我们在尝试使用Chrome键入日期时注意到了一些不寻常的行为。
答案 0 :(得分:1)
与评论一样,您应该使用SELECT *
FROM
(
(SELECT 'January' AS col1 )
UNION
(SELECT 'December' AS col1 )
) AS derivedTable
事件代替focusout
blur