|
Замена значений ячеек таблицы.
Здравствуйте. есть у меня таблица. в ней есть поля "название", "цена".
Цена - в рублях. Мне нужно, чтобы при каком-то действии происходил пересчет цены в другую валюту ну и соответственный вывод цифирь в нужную ячейку. Курс валюты тоже содержится в отдельной табличке в своей ячейке. |
Блин, мало того что последнее время перестали просто вопросы задавать, а нагло просить сделать работу за них, так еще и задачу описывают методом "Сделай то не знаю что, но что бы работало!". Подробнее нельзя!? С примером таблицы и т.д.!? А то после такого описания задачи, не то что желание помочь пропадает, даже разбираться что вы хотите (да какой там разбираться, скорее гадать).
|
чувак. куда подробнее. Есть 2 таблички. В 1й таблице в одной из ячеек есть цифра. 36.
И есть 2я таблица. Содержит много строк и несколько ячеек в каждой строке. Одна ячейка в строке содержит некое число. Так вот. Мне нужна какаянибудь функция, чтобы по нажатии на кнопку или ссылку или еще чего происходила замена значений ячеек с числом во 2й таблице. Замена такая "ячейка 2я таблица / ячейка 1й таблицы". Ну грубо говоря 24000/36 |
Цитата:
|
В общем вот пример
<table id="t"> <tr><td>Текст</td><td>Текст</td><td>2890</td></tr> <tr><td>Текст</td><td>Текст</td><td>545</td></tr> <tr><td>Текст</td><td>Текст</td><td>4545</td></tr> <tr><td>Текст</td><td>Текст</td><td>4575</td></tr> </table> table.rows[0].cols[2].innerHTML=2890/28; table.rows[1].cols[2].innerHTML=545/28; table.rows[2].cols[2].innerHTML=4545/28; table.rows[3].cols[2].innerHTML=4575/28; Только этих td гораздо больше. И каждое значение мне нужно помножить, скажем, на 28 и вывести уже обновленную ячейку. Я так понимаю нужен цикл, но плохое знание javascript не позволяет мне просто так это реализовать. мне нужно во первых узнать общее количество этих td, в которых содержатся числа, во вторых в цикле выполнить простую операцию деления и в конце чтобы вывелись обновленные значения. |
забыл
var table=document.getElementById("t"); |
Ну тогда как то вот так:
function operation(){ var td1 = document.getElementById('table1').getElementsByTagName('td'); var tr2 = document.getElementById('table2').getElementsByTagName('tr'); var i = 0; while(i < tr2.length){ var td2 = tr2[i].getElementsByTagName('td'); var value = parseFloat(td2[2].innerHTML) / parseFloat(td1[1].innerHTML) td2[2].innerHTML = value; i++; } } <table id='table1' border="1"> <tr> <td>какие то данные</td> <td>36</td> <td>какие то данные</td> </tr> </table> <br> <table id='table2' border="1"> <tr> <td>какие то данные</td> <td>какие то данные</td> <td>24000</td> </tr> <tr> <td>какие то данные</td> <td>какие то данные</td> <td>24000</td> </tr> <tr> <td>какие то данные</td> <td>какие то данные</td> <td>24000</td> </tr> </table> <br> <span style="color:#99cc33" onclick="operation()">Замена</span> Дальше уже додумаете или переделаете под свои нужды. Но идея примерно такая. |
уже помогли... не успел :)
|
благодарю )
|
что то я не пойму. с вашим вариантом все понятно. Я даже понял как он работает. Но вот сюда никак не могу перенести:
<script type="text/javascript"> function operation(){ var td1 = document.getElementById('table1').getElementsByTagName('td'); var tr2 = document.getElementById('color').getElementsByTagName('tr'); var i = 0; while(i < tr2.length){ var td2 = tr2[i].getElementsByTagName('td'); var value = parseFloat(td2[3].innerHTML) / parseFloat(td1[1].innerHTML) td2[3].innerHTML = value; i++; } } </script> </head> <body> <table id='table1' border="1"> <tr> <td>какие то данные</td> <td>36</td> <td>какие то данные</td> </tr> </table> <br /> <table width='100%' id='color' border=0> <tr><th>артикул</th> <th>Наименование <a href=/pricelist/catalog.php?n_cat=314&o=1&b=1&back=1> </th> <th> </th> <th>Цена</th><th> </th></tr><tr onmouseover="this.style.cursor='hand';"><td width='10%' align='center'><span class='font'>GEH-NX-CAL.BS</span> </td><td width='80%'>Корпус ATX JET Computer Calypso (игровой/без блока/боковое окно /12cm вент/2usb/2audio/firewire) Black/Metall</td><td width='2%'> </td> <td width='14%' align='center'>4409.52</td> <td><a href=where.php?n=38431&n_cat=314&back=1><img src="images/AideSZ_0001.png" alt="Где?" border="0" /></a></td> </tr><tr onmouseover="this.style.cursor='hand';"><td width='10%' align='center'><span class='font'>GEH-JCP-SPIDER.</span> </td><td width='80%'>Корпус ATX JET Computer Spider (с термосенсором/без блока/боковое окно /12cm воздузовод) Black</td><td width='2%'> </td> <td width='14%' align='center'>3492.34</td> <td><a href=where.php?n=38427&n_cat=314&back=1><img src="images/AideSZ_0001.png" alt="Где?" border="0" /></a></td> </tr><tr onmouseover="this.style.cursor='hand';"><td width='10%' align='center'><span class='font'> </span> </td><td width='80%'>Корпус ATX AOpen G528 Black-Silver 450W (USB,card reade, audio, 1394)</td><td width='2%'> </td> <td width='14%' align='center'>3393.38</td> <td><a href=where.php?n=38985&n_cat=314&back=1><img src="images/AideSZ_0001.png" alt="Где?" border="0" /></a></td> </tr><tr onmouseover="this.style.cursor='hand';"><td width='10%' align='center'><span class='font'></span> </td><td width='80%'>Корпус ATX AOpen QF50C Silver-Black 350W P4</td><td width='2%'> </td> <td width='14%' align='center'>1656.73</td> <td><a href=where.php?n=34055&n_cat=314&back=1><img src="images/AideSZ_0001.png" alt="Где?" border="0" /></a></td> </tr><tr onmouseover="this.style.cursor='hand';"><td width='10%' align='center'><span class='font'>DA-01WD-D</span> </td><td width='80%'>Корпус ATX Chieftec DA-01WD-D White 400W (с дверцей)</td><td width='2%'> </td> <td width='14%' align='center'>2849.87</td> <td><a href=where.php?n=29594&n_cat=314&back=1><img src="images/AideSZ_0001.png" alt="Где?" border="0" /></a></td> </tr><tr onmouseover="this.style.cursor='hand';"><td width='10%' align='center'><span class='font'> </span> </td><td width='80%'>Корпус ATX Gigabyte GZ-AA3CB-SJB Poseidon 310 Black (без БП, 2xUSB)</td><td width='2%'> </td> <td width='14%' align='center'>3443.58</td> <td><a href=where.php?n=37939&n_cat=314&back=1><img src="images/AideSZ_0001.png" alt="Где?" border="0" /></a></td> </tr><tr onmouseover="this.style.cursor='hand';"><td width='10%' align='center'><span class='font'>75917</span> </td><td width='80%'>Корпус ATX Gigabyte GZ-AX1CA-SDB Triton 180 Black w/o PSU </td><td width='2%'> </td> <td width='14%' align='center'>2909.69</td> <td><a href=where.php?n=32598&n_cat=314&back=1><img src="images/AideSZ_0001.png" alt="Где?" border="0" /></a></td> </tr></table> <span style="color:#99cc33" onclick="operation()">Замена</span> </body> </html> может я чего то не понимаю ??? |
Часовой пояс GMT +3, время: 08:50. |
|