JSFiddle - React, Tailwind, and code Playground
HTML
<table cellpadding="0" cellspasing="0" class="zebra" id="articles-table">
<thead>
<tr>
<th>Производитель</th>
<th>Наименование</th>
<th></th>
<th class="prcol">Цена</th>
<th>Кол-во на складе</th>
<th>Сроки поставки</th>
<th></th>
</tr>
</thead>
<tbody id="main-art">
<tr>
<td class="zebra-colspan" colspan="7">
Запрошенный артикул:
</td>
</tr>
<tr class="zebra-stripe zebra-grey zebra1">
<td>
<h5>
KNECHT
</h5>
</td>
<td>
Масляный фильтр
<h5>
OX 143D
</h5>
</td>
<td>
<a href="/articles/1248572/details">подробнее/фото</a>
</td>
<td>
<p br="KNECHT" class="priceclass" id="OX143D" nr="OX143D" type="price"></p>
6.5
</td>
<td>
<p br="KNECHT" class="qntclass" id="OX143Dq" nr="OX143D" type="quantity">0
</p>
</td>
<td>
<p br="KNECHT" class="waittimeclass" id="OX143Dw" nr="OX143D" type="waittime">1
</p>
</td>
<td>
<form accept-charset="UTF-8" action="/line_items" method="post"><div style="margin:0;padding:0;display:inline"><input name="utf8" type="hidden" value="✓"><input name="authenticity_token" type="hidden" value="BIjJnsLBp1Z2oo3+QzVaQh8ekPkuzHj/vBH/kZK8ApE="></div>
<input id="ART" name="ART" type="hidden" value="KNECHT | OX 143D | Масляный фильтр">
<input id="OX143D" name="price" type="hidden" value="0">
<input id="distributor_id" name="distributor_id" type="hidden" value="1">
...
JavaScript
jQuery(function($) {
var table = $('table');
$(document).ready(function () {
$('.prcol').click(function(e) {
var $sort = this;
var $table = $('#articles-table');
var $rows = $('tbody.analogs_art > tr',$table);
$rows.sort(function(a, b){
var keyA = $('td:eq(3)',a).text();
var keyB = $('td:eq(3)',b).text();
if (keyA.length > 0 && keyB.length > 0)
{
if($($sort).hasClass('asc')){
console.log("bbb");
return (keyA > keyB) ? 1 : 0;
} else {
console.log(keyA+"-"+keyB);
return (keyA > keyB) ? 1 : 0;
}
}
});
$.each($rows, function(index, row){
//console.log(row);
$table.append(row);
//$("table.123").append(row);
});
e.preventDefault();
});
});
});