AngularJS ngModel以十进制形式输入数字



我有一个与产品价格绑定的输入字段,该字段具有2个小数精度:

<input type="number" name="price" step=".01" id="price" ng-model="product.price" min="0" max="1000000" required>

然后我提交这个产品并从服务器获得响应,从服务器上的echo'ed更新了product.price,但上面的价格输入变为空,现在从

console.log($scope.product.price)

我现在可以判断出这个来自服务器的值是一个字符串,但即使我做了以下操作:

$scope.product.price = parseFloat(response.updatedModel.price).toFixed(2);

价格输入仍然为空。。。。如何使价格输入显示服务器返回的2个小数精度的价格值?

问题是input要求属性为数字,但toFixed将其转换为字符串。

尝试删除.toFixed(2);:

$scope.product.price = parseFloat(response.updatedModel.price);

当使用模型视图体系结构时,模型不应该关心它的显示方式,而是视图的关注点,在您的情况下,它是您的输入(step=".01")。

最新更新