我从json获取并将值设置为我的角度离子应用程序。我的文本框保存了该值。但我无法将文本框值获取到控制器。这就是我做到的方式
controller.js
$http.post("http://www.fooget.com/mydetails.php).success(function(details){
$scope.mydetails= details;
});
我将值设置为我的html页面
<form>
<div ng-repeat="data in details|limitTo:1">
<p>{{data.f_name}}</p> <!--displays the value-->
<input type="text" ng-model="v.name" value="{{data.f_name}}"/> <!--empty values-->
<input type="text" ng-model="v.id" value="{{data.id}}"/> <!--empty values-->
<button ng-click="push(v)">
</form>
在表单上单击我没有得到我的控制器的文本框值,我试图获得控制器的vaules。它没有出现
$scope.push= function (v) {
var push_name = v.name; // empty values
var push_id = v.id; // empty values
}
答案 0 :(得分:1)
同样在您的HTML中:
<div ng-repeat="data in details|limitTo:1">
应该是
<div ng-repeat="data in mydetails|limitTo:1">
因为您有$scope.mydetails
而不是details
真正的问题在于初始化ng-model
:
由于您只是在输入文本中设置value
属性,因此未将其分配给ng-model
。使用ng-init
指令在视图中设置它。
<input type="text" ng-model="v.name" ng-init="v.name=data.f_name"/>
<input type="text" ng-model="v.id" ng-init="v.name=data.id"/>
这对你有用。