Angularjs - 控制器中的用户输入

时间:2016-10-10 12:22:38

标签: angularjs http angularjs-scope

我想在控制器中使用用户输入值。例如,我想获取一个URL并发送HTTP GET请求。我尝试了以下格式,不幸的是它不起作用。

<script>
var app = angular.module('myApp',[]);
app.controller('myCtrl' , function($scope, $http){
$http.get("{{url}}")
.success(function(response){
$scope.data=response.data;
});
});
</script>

2 个答案:

答案 0 :(得分:2)

以下是从用户输入中检索到的url

var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope, $http) {

  $scope.callAPI = function() {
    console.log($scope.url);
    $http.get($scope.url)
      .success(function(response) {
        $scope.result = response.data;
      });
  };

});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="myApp" ng-controller="myCtrl">
  Enter url :
  <input type="text" ng-model="url" />
  <input type="submit" ng-click="callAPI()" />
  
  <div ng-bind="result"></div>
</div>

注意 :如果您输入了错误的网址,则会显示错误

答案 1 :(得分:0)

应该有这样的忠诚:

<input ng-model="url" required/>

然后你可以使用

$http.get($scope.url)....