JS将table中的td标签值去重

来源:互联网 发布:linux cdn服务器搭建 编辑:程序博客网 时间:2024/05/19 02:31

JS 将table中的TD标签值去重

有的时候将ACTION传过来的对象在页面进行遍历,会发现有的值是重复的.

比如数据是这样的

{name:'李磊',age:20}

{name:'李磊',age:21}

{name:'李磊',age:22}

当我们不能采取在后台进行数据处理.我们就可以在jsp页面对数据进行去重.

直接上代码:

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%><%@ page import="java.util.*"%><%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"> <%    List<String> names = new LinkedList<String>(); // Listnames.add("奥斯卡;大健康;奥斯卡");names.add("王彪;李磊;李磊");names.add("陈雷;陈雷");request.setAttribute("names", names); // 添加到request%><html>  <head>    <base href="<%=basePath%>">     <title>测试页面</title>   </head>   <script type="text/javascript" src="<%=basePath%>/js/jquery/jquery-1.8.3.min.js"></script>      <script type="text/javascript" >                     </script>  <body >    <table width="100%" border="0" cellpadding="30" cellspacing="10" >   <tr >       <td align="center"><h1>车型库</h1></td>       </tr>    </table>    <table width="100%" border="1" cellpadding="10" cellspacing="10" id="tableid">    <tr>        <th>username</th>    </tr>    <c:forEach var="name" items="<%= names %>" varStatus="status">    <tr align="center">    <td class="mouse_hover">    <c:out value="${name}" />    <input type="hidden" name="search" value="${status.last}"/>    </td>        </tr></c:forEach></table>  </body>  <script language="javascript" >       function dataUpdate(){         var tableObj = document.getElementById("tableid");    //在此处修改i和j的初始值,可指定行和列进行数据去重.    for (var i = 0; i < tableObj.rows.length; i++) {    //遍历Table的所有Row        for (var j = 0; j < tableObj.rows[i].cells.length; j++) {   //遍历Row中的每一列            var value = Trim(tableObj.rows[i].cells[j].innerText);    Array.prototype.unique3 = function(){ var res = []; var json = {}; for(var i = 0; i < this.length; i++){ if(!json[this[i]]){   res.push(this[i]);   json[this[i]] = 1;  } } return res;}    var arr = value.split(";");    tableObj.rows[i].cells[j].innerHTML = arr.unique3();        }    }    };          function Trim(str) { str = str.replace(/<\/?.+?>/g,""); str = str.replace(/[\r\n]/g, ""); str = str.replace(/\s+/g, ""); str = str.replace(/^\s*/g,""); str = str.replace(/\s*$/g,""); str = str.replace(/(^\s*)|(\s*$)/g, ""); str = str.replace(/\s/g,"");  return str;}    var els =document.getElementsByName("search");   for (var i = 0, j = els.length; i < j; i++){   if(els[i].value == "true"){   dataUpdate();    }   }</script>  </html>