AngularJS REST Api 选择框 ng-change

标签 angularjs rest ionic-framework angularjs-ng-change

我正在从外部 URL 将数据加载到选择框中。问题是 ng-change 根本没有被触发。但是,如果我创建一个本地数组,它就可以工作!我想根据选择更新主网址。

但是我注意到,选项的“值”字段是“未定义”,但选择框会填充 post.site_name。

HTML:

<select ng-options="site_name as post.site_name for post in posts"
            ng-model="something" ng-change="updatee(post.path)">
    <option>Select</option>
</select>

Controller :

 .controller('HotelCtrl', function( $scope, $http, DataLoader, $timeout, $rootScope, $log ) 
{
 var postsApi = 'http://my_URL';

 $scope.updatee = function(newLink) {
    console.log('works');
    $rootScope.url = newLink;
 };

 $scope.loadPosts = function() {
   DataLoader.get( postsApi ).then(function(response) {
       $scope.posts = response.data;

   }, function(response) {
      $log.error('error', response);     
   });
 }

 $scope.loadPosts();

})

服务:

.factory('DataLoader', function( $http, $log ) {
 return {
  get: function(url) {
    // Simple index lookup
    return $http.get( url );
  }
 } 
})

我已经这样做了至少一天了,并且快要疯了......感谢任何帮助。 谢谢

最佳答案

你可以试试这个选择标签吗?

<select ng-options="post.site_name as post.site_name for post in posts"
        ng-model="something" ng-change="updatee(post.path)">

ng-options 语法是 select_ (as _label_)?对于 _collection_ 中的 (_key_,)?_value_

您正确传递了label,但没有正确传递select。因此 post.path 未正确加载。

关于AngularJS REST Api 选择框 ng-change,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35753796/

相关文章:

javascript - 使 url 匹配 '/' 、 '/index' 和 '/index.html' 到单个状态

javascript - 在 Angular 1.5 中使用 'one-directional binding' (<) 有什么意义?

angularjs - 在 Angular 2 中发出 http POST 请求

休息 : Correct HTTP verb to check a password

angular - 清除 ionic 选择选项

javascript - Ionic 3 压缩图像

javascript - 如何在 Angular js 的新选项卡上显示图像或 pdf 文件?

angularjs - AngularJs 中 Controller 之间的通信

java - 如何在 Jax rs 中运行 localhost url 进行发布

cordova - ionic : Opening html content in Inapp Browser