需求:比较税前薪资是否在薪资范围内,超过范围则薪资输出变红色。
vo里面加了变量redFlag用于判断一条记录是否超过范围,是否变红。但是在jsp页面中由于封装的标签,修改css没有用。
想到用js动态改变颜色。但是tb:gridColumn标签只能加styleClass属性
<!-- added by wang.yanlong 2015-04-17 超过税前薪酬上限变红1红0黑-->
<logic:equal value="1" name="stdHeadcountDetailVO" property="redFlag">
<tb:gridColumn property="salaryBefore" label="税前薪酬" styleClass="dragon" />
</logic:equal>
<logic:equal value="0" name="stdHeadcountDetailVO" property="redFlag">
<tb:gridColumn property="salaryBefore" label="税前薪酬" />
</logic:equal>
<!-- end -->
渲染的html是:<td class="dragon "><span class="view" style="display:block;">2800</span></td>
如何通过class属性得到对象再改变里面span标签的style属性呢。
1.通过class属性得到对象。
2.找到span对象,改变style属性。
//js变红added by wang.yanlong 2015-04-17,
//这个方法 第一个参数 需要传入 获取class类的父节点
//第二个参数就是你传入的class名字
//返回的是所有class属性同名的对象数组。
function getByClass(oParent, sClass)
{
var aEle=oParent.getElementsByTagName('*');
var aResult=[];
var re=new RegExp('\\b'+sClass+'\\b', 'i');
var i=0;
for(i=0;i<aEle.length;i++)
{
if(re.test(aEle[i].className))
{
aResult.push(aEle[i]);
}
}
return aResult;
}
var wz=getByClass(document,'dragon');
//遍历所有class="dragon"的td对象。找到第一个子节点span,改变style的颜色为red.
for(var i = 0 ; i < wz.length; i++){
alert(wz[i].firstChild.style.color);
wz[i].firstChild.style.color='red';
}
//end
相关推荐
这些只是`document`对象的一部分功能,实际上它还包含许多其他属性和方法,如`getElementByClassName()`, `getElementsByTagName()`, `getElementsByTagnameNS()`等,这些方法使得JavaScript成为动态更新网页的强大...
一个基于原生js而封装的颜色选择器插件。 安装与使用 安装 npm install ew-color-picker --save-dev 引入 [removed][removed] 颜色选择器插件如下: //默认配置 var color = new ewColorPicker('.demo'); 或 var...
1. **DOM操作**:通过`document.getElementById`、`querySelector`或`getElementByClassName`等方法获取DOM元素,然后改变它们的样式属性,如`style.left`、`style.top`、`style.width`、`style.height`等来实现动画...
1)document.getElementById(id);通过对象的属性id来获取; 2)element.getElementByTagName(tag);通过标签名来获取; 3)element.getElementByClassName(class);通过属性类名来获取; 2:属性的set和get方法. 1)...
document.getElementByClassName 帮手 防抖和油门 睡觉 objectToArray和arrayToObject 2个对象的差异 记忆功能 数据结构 堆实施LRCache 队列 单链表 双链表 演算法 插入排序 选择排序 气泡排序 快速排序 合并...
在JavaScript学习的旅程中,构建自己的JS库是一个有趣且实用的练习。这不仅可以帮助你深入理解JavaScript的基础,还可以让你熟悉库的构造方式。在本文中,我们将探讨如何创建一个简单的JS库,包括两个常用的方法:`$...
因此,在不牺牲代码可读性和维护性的前提下,适当采用原生JavaScript方法,有助于进一步优化应用程序的整体性能。 总之,通过遵循以上建议,开发者可以在很大程度上提升基于jQuery的应用程序的性能表现,从而为用户...
- **类选择器**:如`$(".className")`,在不同的浏览器中性能表现不一,取决于浏览器是否支持特定的原生方法(如`getElementByClassName`)。 - **伪类和属性选择器**:这类选择器的性能依赖于浏览器是否提供了相应...
7. **DOM操作**:通过`document.getElementById()`, `querySelector()`, `querySelectorAll()`, `getElementByClassName()`, `getElementsByTagName()`等获取DOM元素,使用`innerHTML`, `textContent`, `appendChild...
相反,class选择器(如`$('.className')`)在某些浏览器中可能相对较慢,尤其是IE5-IE8,因为它们没有`getElementByClassName`的原生支持。最慢的选择器是伪类选择器(如`':hidden'`)和属性选择器(如`'[attribute=...
例如,`getElementByClassName('className')`将找到所有具有指定类名的元素。 4. `getElementByName`: 根据元素的name属性获取元素,返回结果和前两者一样,可以是多个元素组成的集合。在HTML表单处理中,这个方法...
- **原生JavaScript方法优先**:对于基础操作,如选择元素或绑定事件,原生JavaScript方法(如`document.getElementById()`或`addEventListener()`)通常比jQuery更快。例如,`$(“#foo”)`远慢于`document....
chainons-js 用于小部件的一些有用的 javascript 片段列表(Affinitad-Twenga 项目) 随机百分比.js 哈萨德() 格式价格.js 删除十进制() addDecimals() 货币开关() DOMsibling.js 下一个兄弟姐妹() 上一个...
- **JavaScript修改样式**:JavaScript可以直接操作DOM,改变元素的样式,如例子中的`document.getElementByClassName("mar_b_10").style.margin-bottom="10px";`,这种方式创建的样式优先级较高。 - **浏览器兼容性...
8. **图像处理**:可能利用JavaScript库(如Pixi.js或Three.js)处理和渲染星空图像,包括缩放、旋转、裁剪等。 9. **动画和性能优化**:使用`requestAnimationFrame`进行平滑的动画处理,确保在各种设备上都能流畅...
7. **DOM遍历和选择器**:如querySelector()、querySelectorAll()、getElementByClassName()等,用于查找和操作DOM元素。 8. **拖放功能**:HTML5引入的拖放API,允许用户在页面元素之间拖放数据。 9. **表单控制*...