我試過上面的解決方案,但去模型的價值是格式化的值,然後返回並給我currencyPipe錯誤。所以我必須
[ngModel]="transfer.amount | currency:'USD':true"
(blur)="addToAmount($event.target.value)"
(keypress)="validateOnlyNumbers($event)"
而對addToAmount函數 - >模糊更改導致ngModelChange給我光標問題。
removeCurrencyPipeFormat(formatedNumber){
return formatedNumber.replace(/[$,]/g,"")
}
並刪除其他非數值。下面這裏searchDetail是一個對象
validateOnlyNumbers(evt) {
var theEvent = evt || window.event;
var key = theEvent.keyCode || theEvent.which;
key = String.fromCharCode(key);
var regex = /[0-9]|\./;
if(!regex.test(key)) {
theEvent.returnValue = false;
if(theEvent.preventDefault) theEvent.preventDefault();
}
有人可以解釋爲什麼它有像這樣被分割出去?我正在嘗試將日期綁定到類型爲date的輸入:[(ngModel)] =「model。endDate | date:'y-MM-dd'「,管道將不起作用。但是,如果我不使用banana語法並使用上面的拆分語法,它可以正常工作。 –
這是否真的起作用?它不起作用它說在一個動作表達式中不能有一個管道 – rampantNinja
這對我有用!@BlakeRivell「[]」從數據源單向綁定屬性來查看目標,你可以改變它如何用管道顯示。當使用「()」綁定時,另一種方式是改變格式在這裏是沒用的。所以我想這就是爲什麼香蕉放在一個盒子裏「[()]」不能用管子分割它們你可以在這裏閱讀更多關於它的信息:https://angular.io/docs/ts/latest/guide/template-syntax.html#!#binding-syntax –