cbfmai 发表于 2013-2-7 20:50:05

关于JS获取struts iterate对象及提醒功能

今天下午要做项目中的一个小功能:付款提醒功能,到付款时间用红色显示,做成之后如下图

http://cbfmai.iteye.com/upload/picture/pic/42819/f5402300-d53f-32e4-8629-ad50ad271b6a.jpg


如下代码是struts iterate对象:
<table width="100%" border="1" class="listtable" id="table"><tr class="listheader"><td width="30" align="center" nowrap>序号</td><td width="30" align="center" nowrap><input type="checkbox" name="allbox" ></td><td width="30" align="center" nowrap>编辑</td><td width="100" align="center" nowrap><gpt:PageSortColumn column="obj.sn"htmlproperty="class='sortcolumn'">合同编号</gpt:PageSortColumn></td><td width="100" align="center" nowrap><gpt:PageSortColumn column="obj.name"htmlproperty="class='sortcolumn'">合同名称</gpt:PageSortColumn></td><td width="100" align="center" nowrap><gpt:PageSortColumn column="obj.money"htmlproperty="class='sortcolumn'">金额</gpt:PageSortColumn></td><td width="100" align="center" nowrap><gpt:PageSortColumn column="obj.deadline"htmlproperty="class='sortcolumn'">期限</gpt:PageSortColumn></td><td width="100" align="center" nowrap><gpt:PageSortColumn column="obj.principal"htmlproperty="class='sortcolumn'">负责人</gpt:PageSortColumn></td><td width="100" align="center" nowrap><gpt:PageSortColumn column="obj.paytime"htmlproperty="class='sortcolumn'">付款时间</gpt:PageSortColumn></td></tr><logic:iterate id="obj" name="OBJLIST" scope="request"><tr class="listrow"onmouseout="out(this)"><gpt:TD><%=++i%></gpt:TD><td width="30" align="center"><input type="checkbox" name="delbox" value="<bean:write name="obj" property="id"/>" /></td><td width="30" align="center"><img src="../../resources/images/icon/icon_modify.gif"class="icon" /></td><bean:write name="obj" property="sn" /><bean:write name="obj" property="name" /><bean:write name="obj" property="money" /><bean:write name="obj" property="deadline" /><bean:write name="obj" property="principal" /><bean:write name="obj" property="paytime" /></tr></logic:iterate></table>

下面是在窗体自动加载时调用JS来提醒是否到了付款日期(我这里是做提前一天提醒)
代码如下:
    // 显示红色   window.onload = function(){      //得到这个表   var array = document.getElementById("table");      //得到这个表共有多少行   var length = array.rows.length - 1;   var i=1;      //循环判断是否超过付款日期   for(i=1; i <= length; i++){   var date = new Date();   var year = date.getFullYear();   var month = date.getMonth()+1;   var day = date.getDate() - 1;//因为我这里是第7列,所以cells   var time = array.rows.cells;   var timeArray = new Array();   timeArray = year;   timeArray = month;   timeArray = day;   var j = 0;   var k = 0;   var subStrOfTime = time.innerText.substr(0,10);   for(j = 0; j < subStrOfTime.split("-").length; j++){   var a = subStrOfTime.split("-");   // 格式化后相比较   if(a.replace(/\b(0+)/gi,"")<=timeArray)   {   k ++ ;   }   }   if(k == 3){   array.rows.style.backgroundColor="#FF6900";   }   }   }

最后的功能如第一张图片!
可能JS写的有些不好看,或者是说比较冗繁吧,呵呵,毕竟是个JS新手!
哎,今天下午终于可以稍微上上小网了!!
页: [1]
查看完整版本: 关于JS获取struts iterate对象及提醒功能