angular.js - angularjs 如何根据动态id显示div
给我你的怀抱
给我你的怀抱 2017-05-15 17:08:52
0
7
708

我在html里面动态设置了p的id代码如下:


<p ng-repeat="item in items">
    <p id="{{item.name}}" class="ng-hide"> {{item.name}} </p>
<p>

html解析之后能出来动态id的效果,类似于这样:

<p ng-repeat="item in items">
    <p id="name1" class="ng-hide"> name1 </p>
    <p id="name2" class="ng-hide"> name2 </p>
    <p id="name3" class="ng-hide"> name3 </p>
<p>

我想要动态的控制这些p显示还是不显示。我在js里面写了这样的代码:

html:
<input type="button" ng-click="show(item.name)">
js:
$scope.show=function(name){
    document.getElementById(name).style.display = "block";
}

结果并没有实现我想要的效果,还是每次点击都会显示三个p。有什么办法能实现我想要的效果么?

给我你的怀抱
给我你的怀抱

membalas semua(7)
过去多啦不再A梦

Walaupun saya tidak faham mengapa, saya menukar class="ng-hide" kepada style="desplay:none" dan ia berjaya. . .

刘奇

Adakah boleh menggunakan ng-show dan ng-hide

伊谢尔伦

Tambah medan "isShow" pada item, nilai lalai adalah palsu,

<p ng-repeat="item in items">
    <p id="{{item.name}}" class="ng-hide" ng-show="item.isShow"> {{item.name}} </p>
<p>

Apabila butang diklik, nilai isShow diterbalikkan.

html:
<input type="button" ng-click="show(index)">
js:
$scope.show=function(index){
    $scope.items[index].isShow = !$scope.items[index].isShow;
}
Ty80

Terdapat dua cara untuk mengawal paparan elemen dalam angular.js Yang pertama ialah: ng-show ng-hide dan satu lagi ialah ng-if

大家讲道理

Adalah disyorkan untuk menyusun semula data anda dan menggunakan ng-hide untuk mengawal sama ada elemen tersembunyi atau tidak:

`[
    {
        id:'id1',
        name:'name1',
        hide:false //配合nd-hide实现元素隐藏和显示
    },
    {
        id:'id2'
        name:'name2',
        hide:true
    }
    //...
]

----------


<p ng-repeat="item in items">
    <p id="item.id" ng-hide="item.hide" ng-bind="item.name"></p>
<p>`
写的比较简单,有问题再问
过去多啦不再A梦

Tambahkan atribut lain, tulis pada atribut tersuai p, dan kemudian ng-if membuat pertimbangan?

阿神

https://github.com/xufei/ng-c...

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan