<table>
<tbody>
$tr_earning=0;
while($earning=mysql_fetch_array($sql_earning,MYSQL_ASSOC)){
if($tr_earning<14)echo '<tr id="">';
else echo '<tr id="tr_earning_shadow" style="display:none">';
echo "<td style='text-align:left;'>text1</td>";
echo "<td class='blue'>$earning[ticker]</td>";
echo "<td style='text-align:left;'>$earning[company]</td>";
echo '</tr>';
$tr_earning++;
}
$xml_tr_earning=<<<XML
<?xml version="1.0" encoding="UTF-8"?>
<tr style="cursor:hand; cursor:pointer" onclick="if(document.getElementById('tr_earning_shadow').style.display=='none') document.getElementById('tr_earning_shadow').style.display='table-row'; else document.getElementById('tr_earning_shadow').style.display='none';">
<td>Все отчеты</td>
</tr>
XML;
echo $xml_tr_earning;
</tbody>
</table>
В моем скрипте показывает почему-то только 1 строку
Помогите, пожалуйста найти ошибку
Спустя 1 час, 41 минута, 16 секунд (1.05.2012 - 12:59) sergeiss написал(а):
Если ты хочешь, чтобы в этом коде кто-то разбирался, то покажи, что у тебя в итоге получается, т.е. покажи код сформированной страницы.
Спустя 1 час, 7 минут, 8 секунд (1.05.2012 - 14:06) tkir написал(а):
Убрал все лишнее для понятности (это рабочий код)
<table>
<?php
$tr=0;
while($tr<5){
if($tr<2)echo '<tr id="">';
else echo '<tr id="hide" style="display:none">';
echo "<td>$tr</td>";
echo '</tr>';
$tr++;
}
echo $xml=<<<XML
<?xml version="1.0" encoding="UTF-8"?>
<tr style="cursor:hand; cursor:pointer"
onclick="[js]document.getElementById('hide').style.display='table-row';[/js]
">
<td>Все строки</td>
</tr>
XML;
?>
</table>
Спустя 1 час, 58 минут (1.05.2012 - 16:04) sergeiss написал(а):
Ты покажи тот код, который у тебя в браузере уже получается! В любом браузере можно посмотреть и скопировать код.
А так вот думать и гадать, что же у тебя будет в результате выполнения ПХП-кода... Думаешь, многие захотят это делать?
А так вот думать и гадать, что же у тебя будет в результате выполнения ПХП-кода... Думаешь, многие захотят это делать?
Спустя 8 минут, 11 секунд (1.05.2012 - 16:12) tkir написал(а):
Вот исходный код страницы:
<table>
<tr id="">
<td>0</td>
</tr>
<tr id="">
<td>1</td>
</tr>
<tr id="hide" style="display:none">
<td>2</td>
</tr>
<tr id="hide" style="display:none">
<td>3</td>
</tr>
<tr id="hide" style="display:none">
<td>4</td>
</tr>
<?xml version="1.0" encoding="UTF-8"?>
<tr style="cursor:hand; cursor:pointer"
onclick="document.getElementById('hide').style.display='table-row';
">
<td>Все строки</td>
</tr>
</table>
Спустя 1 час, 11 минут, 25 секунд (1.05.2012 - 17:24) sergeiss написал(а):
Цитата (tkir @ 1.05.2012 - 13:18) |
В моем скрипте показывает почему-то только 1 строку |
Вот когда ты показал готовый код, то всё становится понятным У тебя же несколько элементов с одним и тем же id! Браузер получает идентификатор одного из них по запросу document.getElementById('hide'), а остальные даже и не думает искать.
Если ты хочешь вот так скрывать/показывать, то сделай функцию, которая будет это делать. И эта функция должна знать все id, которые должны быть разными, отличающимися друг от друга.
Спустя 1 день, 2 часа, 22 минуты, 37 секунд (2.05.2012 - 19:46) tkir написал(а):
Всем спасибо, решение нашел, задавая уникальный id:
<?php
$show=2; //Количество показываемых строк
$tr=1;
while($tr<6){
if($tr<$show)echo '<tr id="">';
else echo '<tr id="hide'.$tr.'" style="display:none">';
echo "<td>$tr</td>";
echo '</tr>';
$tr++;
}
echo $xml=<<<XML
<?xml version="1.0" encoding="UTF-8"?>
<tr style="cursor:hand; cursor:pointer" onclick="
for(var i=$show+1;i<=$tr;i=i+1){
document.getElementById('hide'+i).style.display='table-row';
}
">
<td>Все строки</td>
</tr>
XML;
?>