我一直试图解决这个问题几天......
我有一组单选按钮可以对1到5之间的内容进行评级,每个按钮设置为值= 1,值= 2,依此类推,作为评论表单的一部分。但是当数据返回到控制器并被推送到db.json文件时,单选按钮值的类型为string。如何让它们成为int类型?
单选按钮HTML代码:
<label class = "radio-inline" for = "one"><input type = "radio"
name = "rating" id = "one" data-ng-model = "userComment.rating"
value = 1 required>1</label>
来自controllers.js的代码:
$scope.submitComment = function() {
$scope.movie.comments.push($scope.userComment);
myFactory.getMovies().update({id:$scope.movie.id}, $scope.movie);
我试过这个认为它会起作用,但它没有。
$scope.userComment.rating = parseInt($scope.userComment.rating);
答案 0 :(得分:2)
只需尝试使用ng-value代替值属性:
<label class = "radio-inline" for = "one"><input type = "radio"
name = "rating" id = "one" data-ng-model = "userComment.rating"
ng-value = "1" required>1</label>
答案 1 :(得分:0)
有两种方法可以做到这一点。
因为,这不起作用,我们可以使用javascript的Number类将字符串转换为类型号。你可以这样做:
$ scope.userComment.rating = Number($ scope.userComment.rating);