ng-modelは双方向バインディングで、フィルタは出力のみを許可するので、filterは使用できません。したがって、filterを使用すると、ng-modelは新しい値をバインドできないため、コントローラでフィルタを呼び出す必要があります。 exのテキスト値が変更されたとき。
<input type="text" name="name" ng-model="num" />
<input type="number" name="name" ng-model="numFormatted" />
がNG-モデルを考えるの下のようなものは、両方の入力のために異なっており、num個のモデルが変更されるたびnumFormattedは
function yourController($scope,$filter)
{
$scope.$watch('num', function(newValue) {
$scope.numFormatted = $filter('number')(newValue); // here we convert changed value of num to number using filter
});
$scope.num = "1";
}
ので、今お使いのコントローラにフィルタ
とコントローラで操作されます入力タイプ= "テキスト"を使用すると、数値に変換されてnumFormattedに割り当てられるので、type = "数値"が更新されます。
フィルタはレンダリング用であり、データを変更するものではありません。 – Mistalis
@venkatフィルタはng-repeatで使用でき、ng-modelでは使用できません –
"**テキストタイプ入力を数字に変換**"とはどういう意味ですか?入力? – Mistalis