1 | 2 |
9 | 8 |
4 | 7 |
6 | 15 |
В силу особенностей предоставляемой на сайте информации информации запотемилось мне сделать на JavaScript (потому как другими языками для работы с HTML я не занимался, да и этот только что начал изучать) процедуру, которая позволяла бы сортировать "любые" таблицы по указанному столбцу. Результатом этих потуг явилась процедура SortTable.
Посмотреть как она работает можно на примере таблицы, показанной выше. Текст HTML-ки, выводящей эту таблицу и содержащий код процедуры приведен ниже:
<HTML>
<HEAD>
<SCRIPT>
function SortTable(myTable, nCol, nRow) {//перебираю строки таблицы, начиная с nRow for(k=nRow; k<myTable.rows.length; k++) {//перебираю строки таблицы начиная с k-той строки for(i=k; i<myTable.rows.length; i++) {//сравниваю i-тую строку с k-той по значению текста ячейки nCol if(myTable.rows[i].cells[nCol].innerText<myTable.rows[k].cells[nCol].innerText) {//если значение i-той < k-той - вставляю новую строку в позицию k newrow=myTable.insertRow(k) //(таблица раздвинулась, i-тая строка першла в позицию i+1) for(j=0; j<myTable.rows[i+1].cells.length; j++) {//заполняю значения ячеек вновь созданной строки значениями ячеек из строки i+1 newcell=newrow.insertCell(j) newcell.innerHTML=myTable.rows[i+1].cells[j].innerHTML } //удаляю строку i+1 myTable.deleteRow(i+1) } } } }</SCRIPT>
Параметры, передаваемые в процедуру: