Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery:如何基于列值删除重复的HTML表行 使用j-Qu疑问,如何删除重复行的两行值,例如,我有2列,即CA和状态,如果状态列值是“部分”,CA列是重复的,我想考虑唯一行是可见的。_Jquery - Fatal编程技术网

Jquery:如何基于列值删除重复的HTML表行 使用j-Qu疑问,如何删除重复行的两行值,例如,我有2列,即CA和状态,如果状态列值是“部分”,CA列是重复的,我想考虑唯一行是可见的。

Jquery:如何基于列值删除重复的HTML表行 使用j-Qu疑问,如何删除重复行的两行值,例如,我有2列,即CA和状态,如果状态列值是“部分”,CA列是重复的,我想考虑唯一行是可见的。,jquery,Jquery,当前屏幕: 预期输出屏幕: html代码 <html> <HEAD> </HEAD> <BODY class="lytBody"> <FORM name="form0" method="post"> <TABLE class="lytTable" border="0" bordercolor="#efefef"> <TR>

当前屏幕: 预期输出屏幕:

html代码

 <html>
   <HEAD> 
   </HEAD>
   <BODY class="lytBody">
      <FORM name="form0" method="post">
         <TABLE class="lytTable" border="0" bordercolor="#efefef">
            <TR>
               <TD class="lytM"> 
            <tbody>
               <tr>
                  <td class="lytM">
                     <table border="1">
                        <tbody>
                           <tr>
                              <td width="6%" nowrap="nowrap" class="rsDsc">CA</td>
                              <td width="6%" nowrap="nowrap" class="rsDsc">LD</td>
                              <td width="6%" nowrap="nowrap" class="rsDsc">COUNT</td>
                              <td width="16%" nowrap="nowrap" class="rsDsc">NAME</td>
                              <td width="15%" nowrap="nowrap" class="rsDsc">DATE1</td>
                              <td width="10%" nowrap="nowrap" class="rsDsc">STATUS</td>
                              <td width="24%" nowrap="nowrap" class="rsDsc">DATE2</td>
                              <td width="29%" nowrap="nowrap" class="rsDsc">DATE3</td>
                           </tr>
                           <tr>
                              <td width="6%" class="rsData1" valign="middle">BDC</td>
                              <td width="6%" class="rsData1" valign="middle">5861</td>
                              <td width="6%" class="rsData1" valign="middle"></td>
                              <td width="16%" class="rsData1" valign="middle">ABC</td>
                              <td width="15%" class="rsData1">09/12/2011 04:33:20</td>
                              <td width="10%" class="rsData1">
                                 <div align="center"><input type="button" name="loadStatus" valign="middle" size="10" value="PENDING" onclick="javascript:getDetail('BDC','5861', 'PENDING')" class="PENDING"></div>
                              </td>
                              <td width="24%" class="rsData1"><br>
                              </td>
                              <td width="29%" class="rsData1">
                                 09/12/2011 04:33:55                                                
                              </td>
                           </tr>
                           <tr>
                              <td width="6%" class="rsData2" valign="middle">BDC</td>
                              <td width="6%" class="rsData2" valign="middle">21990</td>
                              <td width="6%" class="rsData2" valign="middle">1357</td>
                              <td width="16%" class="rsData2" valign="middle">DEF</td>
                              <td width="15%" class="rsData2">06/11/2015 11:37:58</td>
                              <td width="10%" class="rsData2">
                                 <div align="center"><input type="button" name="loadStatus" style="background-color:yellow;" valign="middle" size="10" value="PARTIAL" onclick="javascript:getDetail('BDC','21990','PARTIAL')" class="PARTIAL"></div>
                              </td>
                              <td width="24%" class="rsData2"> <br>
                                 06/11/2015 16:04:28
                              </td>
                              <td width="29%" class="rsData2">
                                 06/11/2015 16:04:28                                                
                              </td>
                           </tr>
                           <tr>
                              <td width="6%" class="rsData1" valign="middle">BDC</td>
                              <td width="6%" class="rsData1" valign="middle">22366</td>
                              <td width="6%" class="rsData1" valign="middle"></td>
                              <td width="16%" class="rsData1" valign="middle">GHI</td>
                              <td width="15%" class="rsData1">07/29/2015 13:49:25</td>
                              <td width="10%" class="rsData1">
                                 <div align="center"><input type="button" name="loadStatus" valign="middle" size="10" value="PENDING" onclick="javascript:getDetail('BDC','22366', 'PENDING')" class="PENDING"></div>
                              </td>
                              <td width="24%" class="rsData1"><br>
                              </td>
                              <td width="29%" class="rsData1">
                                 07/29/2015 14:28:16                                                
                              </td>
                           </tr>
                           <tr>
                              <td width="6%" class="rsData2" valign="middle">BDC</td>
                              <td width="6%" class="rsData2" valign="middle">22367</td>
                              <td width="6%" class="rsData2" valign="middle">1357</td>
                              <td width="16%" class="rsData2" valign="middle">JKL</td>
                              <td width="15%" class="rsData2">07/29/2015 14:35:19</td>
                              <td width="10%" class="rsData2">
                                 <div align="center"><input type="button" name="loadStatus" valign="middle" size="10" value="PARTIAL" style="background-color:yellow;" onclick="javascript:getDetail('BDC','22367','PARTIAL')" class="PARTIAL"></div>
                              </td>
                              <td width="24%" class="rsData2"> <br>
                                 07/29/2015 15:03:37
                              </td>
                              <td width="29%" class="rsData2">
                                 07/29/2015 15:03:37                                                
                              </td>
                           </tr>
                           <tr>
                              <td width="6%" class="rsData1" valign="middle">BDC</td>
                              <td width="6%" class="rsData1" valign="middle">22369</td>
                              <td width="6%" class="rsData1" valign="middle">1357</td>
                              <td width="16%" class="rsData1" valign="middle">MNO</td>
                              <td width="15%" class="rsData1">07/29/2015 15:14:52</td>
                              <td width="10%" class="rsData1">
                                 <div align="center"><input type="button" name="loadStatus" valign="middle" size="10" value="PARTIAL" style="background-color:yellow;" onclick="javascript:getDetail('BDC','22369','PARTIAL')" class="PARTIAL"></div>
                              </td>
                              <td width="24%" class="rsData1">
                                 07/29/2015 15:52:46
                              </td>
                              <td width="29%" class="rsData1">
                                 07/29/2015 15:52:46                                                
                              </td>
                           </tr>
                           <tr>
                              <td width="6%" class="rsData2" valign="middle">BEX</td>
                              <td width="6%" class="rsData2" valign="middle">9500</td>
                              <td width="6%" class="rsData2" valign="middle"></td>
                              <td width="16%" class="rsData2" valign="middle">PQR</td>
                              <td width="15%" class="rsData2">01/31/2012 00:39:57</td>
                              <td width="10%" class="rsData2">
                                 <div align="center"><input type="button" name="loadStatus" valign="middle" size="10" value="PENDING" onclick="javascript:getDetail('BEX','9500', 'PENDING')" class="PENDING"></div>
                              </td>
                              <td width="24%" class="rsData2"><br>
                              </td>
                              <td width="29%" class="rsData2">
                                 01/31/2012 00:40:58                                                
                              </td>
                           </tr>
                           <tr>
                              <td width="6%" class="rsData1" valign="middle">BID</td>
                              <td width="6%" class="rsData1" valign="middle">9918</td>
                              <td width="6%" class="rsData1" valign="middle"></td>
                              <td width="16%" class="rsData1" valign="middle">STW</td>
                              <td width="15%" class="rsData1">02/10/2012 06:09:50</td>
                              <td width="10%" class="rsData1">
                                 <div align="center"><input type="button" name="loadStatus" valign="middle" size="10" value="PENDING" onclick="javascript:getDetail('BID','9918', 'PENDING')" class="PENDING"></div>
                              </td>
                              <td width="24%" class="rsData1"><br>
                              </td>
                              <td width="29%" class="rsData1">
                                 02/10/2012 06:10:14                                                
                              </td>
                           </tr>
                           <tr>
                              <td width="6%" class="rsData2" valign="middle">BID</td>
                              <td width="6%" class="rsData2" valign="middle">9919</td>
                              <td width="6%" class="rsData2" valign="middle"></td>
                              <td width="16%" class="rsData2" valign="middle">XYZ</td>
                              <td width="15%" class="rsData2">02/10/2012 06:11:55</td>
                              <td width="10%" class="rsData2">
                                 <div align="center"><input type="button" name="loadStatus" valign="middle" size="10" value="PENDING" onclick="javascript:getDetail('BID','9919', 'PENDING')" class="PENDING"></div>
                              </td>
                              <td width="24%" class="rsData2"><br>
                              </td>
                              <td width="29%" class="rsData2">
                                 02/10/2012 06:12:15                                                
                              </td>
                           </tr>
                        </tbody>
                     </table>
                  </td>
               </tr>
               <tr>
                  <td>&nbsp;</td>
               </tr>
               <tr>
                  <td></td>
               </tr>
            </tbody>
            </TD>
            </TR>
            <tr>
               <TD>&nbsp;</TD>
            </tr>
            <TR>
               <TD></TD>
            </TR>
         </TABLE>
         <INPUT TYPE="hidden" name="LOAD_ID" value="" />    
         <INPUT TYPE="hidden" name="uiStatus" value="" />      
      </FORM>
   </BODY>
</HTML>

在.each循环中,添加:

var tdElements = $(this).find('td').get();

这将获得按外观顺序排列的所有td元素的数组,然后您可以循环并提取所需td元素的文本。

在内部。每个循环中,添加:

var tdElements = $(this).find('td').get();

这将按外观顺序获得所有td元素的数组,然后您可以循环并提取所需td元素的文本。

请为小选择器添加一个类,例如“mytable”

您可以将以下javascript用于解决方案:

var seen = [];

function pushDataInSeen(ca, status) {
    var alreadyThere = false;
    var i = 0
    for (i = 0; i < seen.length; i++) {
        var theObj = seen[i];
        if ((theObj.ca == ca) && (theObj.status == status) && (status == 'partial')) {
            alreadyThere = true;
            break;
        }
    }
    if (!alreadyThere) {
        seen.push({
            "ca": ca,
            "status": status
        });
    }
    return !alreadyThere;
}

$(document).ready(function() {
    var removal = [];
    $('table.mytable tr').each(function(index) {
        if (index) {
            /* skip the first one for header as per the html structure */
            var ca = $("td:nth-child(1)", $(this)).text().trim().toLowerCase();
            var status = $("td:nth-child(6) input", $(this)).val().toLowerCase();
            if (!pushDataInSeen(ca, status)) {
                removal.push(index + 1);
            }
        }
    });

    removal.reverse();
    for (var i = 0; i < removal.length; i++) {
        $('table.mytable tr:nth-child(' + removal[i] + ')').remove();
    }

});
var-seen=[];
功能pushDataInSeen(ca,状态){
var alreadyThere=假;
变量i=0
对于(i=0;i
请为小选择器添加一个类,例如“mytable”

您可以将以下javascript用于解决方案:

var seen = [];

function pushDataInSeen(ca, status) {
    var alreadyThere = false;
    var i = 0
    for (i = 0; i < seen.length; i++) {
        var theObj = seen[i];
        if ((theObj.ca == ca) && (theObj.status == status) && (status == 'partial')) {
            alreadyThere = true;
            break;
        }
    }
    if (!alreadyThere) {
        seen.push({
            "ca": ca,
            "status": status
        });
    }
    return !alreadyThere;
}

$(document).ready(function() {
    var removal = [];
    $('table.mytable tr').each(function(index) {
        if (index) {
            /* skip the first one for header as per the html structure */
            var ca = $("td:nth-child(1)", $(this)).text().trim().toLowerCase();
            var status = $("td:nth-child(6) input", $(this)).val().toLowerCase();
            if (!pushDataInSeen(ca, status)) {
                removal.push(index + 1);
            }
        }
    });

    removal.reverse();
    for (var i = 0; i < removal.length; i++) {
        $('table.mytable tr:nth-child(' + removal[i] + ')').remove();
    }

});
var-seen=[];
功能pushDataInSeen(ca,状态){
var alreadyThere=假;
变量i=0
对于(i=0;i
如果状态列值不为部分且CA列值不同名,您将如何选择保留哪一行?@SamTengWong。需要根据CA&STATUS列放置唯一行,而仅针对服务器端的分部STATUS.CA列group by..否,在您的示例中有三个对吗?我将如何选择保留哪一行?@SantoshRamKunjir谢谢,但您可以看到LD列它是唯一的,分组方式不起作用,我已经尝试从查询中解决,最后考虑从UIC处理此问题。您将如何选择保留哪一行?@SamTengWong如果状态列值不是部分的,并且CA列值不是同名的。需要根据CA&STATUS列放置唯一行,而仅针对服务器端的分部STATUS.CA列group by..否,在您的示例中有三个对吗?我将如何选择留下哪一个?@SantoshRamKunjir谢谢,但你们可以看到LD列它是唯一的,分组是行不通的,我已经试着从查询中解决了,最后想从UIT中解决这个问题谢谢。但您的输出不是预期的输出。如果您阅读了上面的描述,我要求仅将此逻辑应用于部分状态列。预期输出:@Ashu我之前跳过了部分关键字的事情,请使用上面的代码,现在它可以工作了。更新,我错过了问:计数列值应该同时求和,并在删除多余重复行时显示。谢谢你。但您的输出不是预期的输出。如果您阅读了上面的描述,我要求仅将此逻辑应用于部分状态列。预期输出:@Ashu我之前跳过了部分关键字的事情,请使用上面的代码,现在它可以工作了。更新,我错过了问:计数列值应该同时求和,并在删除多余重复行时显示。如。