AngularJS+HTML表格:按delivered状态为指定ID加删除线失败求助
解决AngularJS表格中已交付行ID添加删除线的问题
我来帮你搞定这个样式问题!你需要根据productstatus是否为"delivered",给对应的productID添加删除线,核心就是在遍历每个productID的元素上加上条件样式判断。
方法一:使用ng-class结合CSS类
这种方式更易维护,适合需要复用样式的场景:
- 先在CSS里定义删除线类:
.strikethrough { text-decoration: line-through; }
- 修改你的HTML代码,给
<a>标签添加ng-class判断:
<a ng-repeat="pid in item.productid.split(',')" href="https://urladdr/associateid={{associateNum}}" target="_blank" ng-class="{'strikethrough': item.productstatus === 'delivered'}"> {{pid.trim()}} </a>
方法二:使用ng-style直接绑定样式
如果只是单次使用,也可以直接通过ng-style动态设置样式:
<a ng-repeat="pid in item.productid.split(',')" href="https://urladdr/associateid={{associateNum}}" target="_blank" ng-style="{'text-decoration': item.productstatus === 'delivered' ? 'line-through' : 'none'}"> {{pid.trim()}} </a>
关键说明
- 每个
pid都属于当前的item,所以可以直接通过item.productstatus获取状态进行判断; - 加上
trim()是为了处理split(',')后可能出现的空格(比如"10, 12"分割后会有带空格的" 12"),让ID显示更整洁。
这样修改后,只要productstatus是"delivered"的行,里面所有的productID都会自动加上删除线啦!
内容的提问来源于stack exchange,提问作者user8373379
相关产品推荐
相关产品推荐

