我在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。有什么办法能实现我想要的效果么?
过去多啦不再A梦2017-05-15 17:10:52
이유는 모르겠지만 class="ng-hide"를 style="desplay:none"으로 변경했더니 제대로 작동했습니다. . .
伊谢尔伦2017-05-15 17:10:52
항목에 "isShow" 필드를 추가하세요. 기본값은 false입니다.
으아악버튼을 클릭하면 isShow의 값이 반전됩니다.
으아악PHP中文网2017-05-15 17:10:52
Angular.js에서 요소 표시를 제어하는 방법에는 두 가지가 있습니다. 첫 번째는 ng-show ng-hide이고 다른 하나는 ng-if
입니다.