作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 ng-repeat 创建多个带有模式的 div,我通过 getElementById 打开它。当我对 id 进行硬编码(例如“modalId”)时,它可以工作,但如果我尝试使用变量则不起作用。我该如何让它发挥作用?
<div class="col-sm-4 col-md-4" ng-repeat="p in proj">
<img class="myImg" ng-src="{{p.image}}" onclick="document.getElementById('{{p.id}}').style.display='block';">
<div id="{{p.id}}" class="w3-modal" onclick="this.style.display='none';">
<div class="w3-modal-content w3-animate-zoom">
<img ng-src="{{p.image}}">
</div>
</div>
</div>
我想要使用的 p.id(第 2 行)是一个 int。
最佳答案
来自文档:不允许对 HTML DOM 事件属性进行插值。请改用 ng- 版本(例如 ng-click 而不是 onclick)。
请参见此处:https://docs.angularjs.org/error/$compile/nodomevents .
示例:
$scope.imgClicked = function(id){
document.getElementById(id).style.display='block';
}
HTML:
<img class="myImg" ng-src="{{p.image}}" ng-click="imgClicked(p.id)">
关于javascript - Angular : How to use variable in HTML getElementById,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41510791/
我是一名优秀的程序员,十分优秀!