我想在ng-model中获得ng值的值,这样我就可以使用控制器部分中的数据了。是否可能或有其他方式吗?

时间:2017-12-31 14:04:46

标签: javascript angularjs html5 angularjs-ng-repeat angularjs-ng-value

  

html中的代码

<div ng-repeat="cityobj in cityData" class="tabledata">
           <input type="text" ng-value="{{cityobj.temp.humidity}}" ng-model="humidity">
            <div>
  

在控制器中

console.log("The value in textfield is",$scope.humidity);
  

它始终提供未定义的输出

1 个答案:

答案 0 :(得分:0)

由于您已经使用了ng-model

,因此您不需要ng值
<div ng-repeat="cityobj in cityData" class="tabledata">
       <input type="text ng-model="cityobj.temp.humidity">
 <div>

然后它应该工作

console.log("The value in textfield is",$scope.cityData[passindex].cityobj.temp.humidity");

<强>样本

&#13;
&#13;
var app =angular.module('testApp',[]);
app.controller('testCtrl',function($scope){

$scope.cityData = [{
  "city": "Klimovsk",
  "temp": {
     "humidity":2
  }
}, {
  "city": "Shalakusha",
   "temp": {
     "humidity":5
  }
}];

$scope.print =function(cityObj){
 console.log(cityObj.temp.humidity);
}

});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<body ng-app="testApp" ng-controller="testCtrl">
<div ng-repeat="cityobj in cityData" class="tabledata">
       <input type="text" ng-model="cityobj.temp.humidity">
       <button ng-click=print(cityobj)>PRINT</button>
 <div>
 </body>
&#13;
&#13;
&#13;