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

我在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。有什么办法能实现我想要的效果么?

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

모든 응답(7)
过去多啦不再A梦

이유는 모르겠지만 class="ng-hide"를 style="desplay:none"으로 변경했더니 제대로 작동했습니다. . .

刘奇

ng-show와 ng-hide를 사용할 수 있나요

伊谢尔伦

항목에 "isShow" 필드를 추가하세요. 기본값은 false입니다.

으아악

버튼을 클릭하면 isShow의 값이 반전됩니다.

으아악
Ty80

Angular.js에서 요소 표시를 제어하는 ​​방법에는 두 가지가 있습니다. 첫 번째는 ng-show ng-hide이고 다른 하나는 ng-if

입니다.
大家讲道理

데이터를 재구성하고 ng-hide를 사용하여 요소 숨김 여부를 제어하는 ​​것이 좋습니다.

으아악
过去多啦不再A梦

다른 속성을 추가하고 p의 custom 속성에 쓴 다음 ng-if가 판단한다고요?

阿神

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

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿