html - ionic 列表项单击在另一个 HTML 页面中显示详细信息

标签 html angularjs list ionic-framework

我使用以下代码创建了一个项目列表:

<html ng-app="ionicApp">
    <head>
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
        <title> Creators </title>
        <link href="http://code.ionicframework.com/nightly/css/ionic.css" rel="stylesheet">
        <script src="http://code.ionicframework.com/nightly/js/ionic.bundle.js"></script>
        <script>
            angular.module('ionicApp', ['ionic'])
            .controller('MyCtrl', function($scope) {
                $scope.items = [
                    { 
                        "id": "1",
                        "name": "Steve Jobs"
                    },
                    { 
                        "id": "2",
                        "name": "Bill Gates"
                    }    
                ];
            });
        </script>
    </head>
    <body ng-controller="MyCtrl">
        <ion-header-bar class="bar-positive">
            <h1 class="title">Smart List</h1>
        </ion-header-bar>
        <ion-content>
            <ion-list>
                <ion-item ng-repeat="item in items" item="item">
                    {{ item.name }}
                </ion-item>
            </ion-list>
        </ion-content>
    </body>
</html>

这是我得到的:

enter image description here

但现在我想打开另一个 html 页面,我可以在其中显示 点击列表项详细信息,例如:Id和名称 在上面的例子中

最佳答案

这是工作 plunker有一些更正的变化!为@Nimsesh Patel 的创建干杯。

新的 html

<ion-modal-view>
  <ion-header-bar>
      <button ng-click="closeModal()">close</button>
      <h1 class="title">My Modal title</h1>
    </ion-header-bar>
    <ion-content>
      <h3>{{items[currentItem].id}}</h3>
      <p>{{items[currentItem].name}}</p>
    </ion-content>
</ion-modal-view>

在你的 Controller 中

angular.module('ionicApp', ['ionic'])
            .controller('MyCtrl', function($scope, $ionicModal) {
                $scope.currentItem = 1;
                $scope.items = [
                    { 
                        "id": "1",
                        "name": "Steve Jobs"
                    },
                    { 
                        "id": "2",
                        "name": "Bill Gates"
                    }    
                ];
                $scope.getdetails = function(id){
                  $scope.currentItem = id;
                  $scope.modal.show();

                };
                $ionicModal.fromTemplateUrl('detail.html', {
                  scope: $scope,
                  animation: 'slide-in-up'
                }).then(function(modal) {
                  $scope.modal = modal;
                });
                $scope.closeModal = function() {
                  $scope.modal.hide();
                };
            });

在 ng-repeat 所在的主 html 中

<body ng-controller="MyCtrl">

    <ion-header-bar class="bar-positive">
      <h1 class="title">Smart List</h1>
    </ion-header-bar>
    <ion-content>
      <ion-list>
        <ion-item ng-repeat="item in items track by $index" item="item" ng-click="getdetails($index)">
                    {{ item.name }}
                </ion-item>
      </ion-list>
    </ion-content>
  </body>

关于html - ionic 列表项单击在另一个 HTML 页面中显示详细信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40479905/

相关文章:

java - 俄罗斯娃娃 - 找到剩下的最少个娃娃

javascript - 获取用户在某个区域选择的所有文本节点

angularjs - 无法将 Content-Type header 放入拦截器

javascript - AngularJS 指令对属性更改没有反应

angularjs - 指令内的动态 ng-model 绑定(bind)

java - 通过将字符串(来自数组)分配为对象的参数之一,将其他参数保留为空,将字符串数组转换为对象列表

javascript - 从javascript上的选择标签获取值(value)

html - CSS: fixed positioning, right: 0px 但不会遵守 max-width

javascript - 使用 Javascript 验证重复的单选按钮

python - 检查一个列表中某个值在单独列表中最常出现的情况