2017-07-18 88 views
0

我現在比較兩個單元格值時有問題。在我使用onclick函數獲取特定單元格值之前。因此,我可以輕鬆地比較兩個項目,但現在我需要自動比較兩個項目並添加引導類別成功(如果它們相同)。我現在使用的代碼如下所示。比較表單元格的兩個值添加類如果相同

的jsfiddle:https://jsfiddle.net/aice09/ynh8wfc9/

var tables = document.getElementsByClassName('tb_jobsched'); 
 
var rows = tables[0].getElementsByTagName('tr'); 
 

 
var data = tables.row($(this).parents('tr')).data(); 
 
var poqty = data[5]; 
 
var stock= data[7]; 
 

 
var newpoqty = poqty .replace("PCS", ""); 
 
var newstocks = stock.replace("PCS", ""); 
 

 
if (newpoqty === newstocks) { 
 
    rows[i].classList.add("success"); 
 
} else { 
 

 
}
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet"/> 
 
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script> 
 
<table id="tb_jobsched" class="table table-bordered table-hover"> 
 
    <thead> 
 
    <tr> 
 
     <td>CUSTOMER</td> 
 
     <td>PO QUANTITY</td> 
 
     <td>DATE OF DELIVERY</td> 
 
     <td>STOCKS</td> 
 
    </tr> 
 
    </thead> 
 
    <tr> 
 
    <td>CUSTOMER 1</td> 
 
    <td>2000 PCS</td> 
 
    <td>2017/06/15</td> 
 
    <td>5000 PCS</td> 
 
    </tr> 
 
    <tr> 
 
    <td>CUSTOMER 2</td> 
 
    <td>500 PCS</td> 
 
    <td>2017/06/15</td> 
 
    <td>500 PCS</td> 
 
    </tr> 
 
</table>

+0

檢查'var newpoqty = qtyperbox.replace(「PCS」,「」); var newstocks = qtyperbox.replace(「PCS」,「」);'同樣我認爲你需要改變數值?你也可以'Number()'所以你不需要使用替換 – guradio

+0

var newpoqty = qtyperbox.replace(「PCS」,「」); var newstocks = qtyperbox.replace(「PCS」,「」);'不影響它只是刪除字符串值@guradio – Ailyn

+0

'qtyperbox'沒有在代碼中定義。問題是:「如果第二個和第四個單元格的內容相同,我如何向表格行添加類?」也就是說,您正試圖將PO數量與庫存進行比較? – nnnnnn

回答

1

const rows = document.querySelectorAll('#myTable tbody tr'); 
 

 
rows.forEach((row) => { 
 
\t const cells = row.getElementsByTagName('td'); 
 
    const poQty = cells[1].innerText; 
 
    const stocks = cells[3].innerText; 
 
    
 
    if (poQty === stocks) { 
 
    \t row.classList.add('success'); 
 
    } 
 
});
.success { 
 
    background: green; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet"/> 
 
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script> 
 
<table id="myTable" class="table table-bordered table-hover"> 
 
    <thead> 
 
    <tr> 
 
     <td>CUSTOMER</td> 
 
     <td>PO QUANTITY</td> 
 
     <td>DATE OF DELIVERY</td> 
 
     <td>STOCKS</td> 
 
    </tr> 
 
    </thead> 
 
    <tbody> 
 
    <tr> 
 
     <td>CUSTOMER 1</td> 
 
     <td>2000 PCS</td> 
 
     <td>2017/06/15</td> 
 
     <td>5000 PCS</td> 
 
    </tr> 
 
    <tr> 
 
     <td>CUSTOMER 2</td> 
 
     <td>500 PCS</td> 
 
     <td>2017/06/15</td> 
 
     <td>500 PCS</td> 
 
    </tr> 
 
    </tbody> 
 
</table>

+0

謝謝工作正常。 :) – Ailyn

1

var tables = document.getElementsByClassName('tb_jobsched'); 
 
var rows = tables[0].getElementsByTagName('tr'); 
 

 
for(var i = 0; i< rows.length; i++) { 
 
\t var childs = rows[i].getElementsByTagName('td'); 
 
    var potqty = childs[1].innerHTML.replace('PCS', ''); 
 
    var stock = childs[3].innerHTML.replace('PCS', ''); 
 
    if(potqty === stock) { 
 
    \t rows[i].className += 'success'; 
 
    } 
 
}
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" /> 
 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script> 
 

 
<table id="myTable" class="table table-bordered table-hover"> 
 
    <thead> 
 
    <tr> 
 
     <td>CUSTOMER</td> 
 
     <td>PO QUANTITY</td> 
 
     <td>DATE OF DELIVERY</td> 
 
     <td>STOCKS</td> 
 
    </tr> 
 
    </thead> 
 
    <tbody class="tb_jobsched"> 
 
    <tr> 
 
     <td>CUSTOMER 1</td> 
 
     <td>2000 PCS</td> 
 
     <td>2017/06/15</td> 
 
     <td>5000 PCS</td> 
 
    </tr> 
 
    <tr> 
 
     <td>CUSTOMER 2</td> 
 
     <td>500 PCS</td> 
 
     <td>2017/06/15</td> 
 
     <td>500 PCS</td> 
 
    </tr> 
 
    </tbody> 
 
</table>

相關問題