Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: php, нажатие на ссылку и срабатывание onclick

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: ребята помоги не могу понять почему onclick не срабатывает при нажатии на ссылку
Алексей Постика
Отправлено: 21 Августа, 2015 - 16:02:27
Post Id


Новичок


Покинул форум
Сообщений всего: 5
Дата рег-ции: Авг. 2015  


Помог: 0 раз(а)




ребята такая фигня есть ссылки которые написаны таким образом:
<ul>
<li ><a href="#"><<</a></li>
<?
for($i=1;$i<=$del;$i++)
{
echo "<li ><a href='#' onclick='openbox('".$i."'); return false'>".$i."</a></li>";
echo"<script type = 'text/javasript'> function openbox(id){
display = document.getElementById(id).style.display;

if(display=='none'){
document.getElementById(id).style.display='block';
}else{
document.getElementById(id).style.display='none';
}
} </script> ";
}
?>
<li ><a href="#">>></a></li>
суть в том что при нажатии на ссылку onclick не работает и вопрос у меня такой почему? и как правильно сделать что бы начал работать?
 
 Top
DeepVarvar Супермодератор
Отправлено: 21 Августа, 2015 - 16:11:35
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




CODE (htmlphp):
скопировать код в буфер обмена
  1. <ul>
  2.     <li><a href="#">&laquo;</a></li>
  3.     <?php for ($i = 1; $i <= $del; $i++) { ?>
  4.         <li>
  5.             <a href="#"
  6.                onclick="openbox('<?=$i?>'); return false;"><?=$i?></a>
  7.         </li>
  8.     <?php } ?>
  9.     <li><a href="#">&raquo;</a></li>
  10. </ul>
  11. <script type="text/javasript">
  12.    function openbox(id)
  13.    {
  14.        var elem = document.getElementById(id);
  15.        if (elem) {
  16.            elem.style.display = elem.style.display == 'none' ? 'block' : 'none';
  17.        }
  18.    }
  19. </script>

Чуешь разницу в оформлении кода и осознании того что ты пишешь?
 
 Top
Алексей Постика
Отправлено: 21 Августа, 2015 - 16:26:35
Post Id


Новичок


Покинул форум
Сообщений всего: 5
Дата рег-ции: Авг. 2015  


Помог: 0 раз(а)




спасибо большое понял
(Добавление)
DeepVarvar пишет:
CODE (htmlphp):
скопировать код в буфер обмена
  1. <ul>
  2.     <li><a href="#">&laquo;</a></li>
  3.     <?php for ($i = 1; $i <= $del; $i++) { ?>
  4.         <li>
  5.             <a href="#"
  6.                onclick="openbox('<?=$i?>'); return false;"><?=$i?></a>
  7.         </li>
  8.     <?php } ?>
  9.     <li><a href="#">&raquo;</a></li>
  10. </ul>
  11. <script type="text/javasript">
  12.    function openbox(id)
  13.    {
  14.        var elem = document.getElementById(id);
  15.        if (elem) {
  16.            elem.style.display = elem.style.display == 'none' ? 'block' : 'none';
  17.        }
  18.    }
  19. </script>

Чуешь разницу в оформлении кода и осознании того что ты пишешь?

хотел еще спросить, как сделать так, что бы предыдущий блок становился невидимым?
 
 Top
DeepVarvar Супермодератор
Отправлено: 21 Августа, 2015 - 17:14:22
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




Выбрать всех заранее, пройтись циклом по каждому, и если это не тот который целевой в данный момент -- спрятать их.
 
 Top
Алексей Постика
Отправлено: 21 Августа, 2015 - 17:20:38
Post Id


Новичок


Покинул форум
Сообщений всего: 5
Дата рег-ции: Авг. 2015  


Помог: 0 раз(а)




DeepVarvar пишет:
Выбрать всех заранее, пройтись циклом по каждому, и если это не тот который целевой в данный момент -- спрятать их.

ты имеешь ввиду взять в циклы все элементы которые должны быть невидимые и по клику определять активный ?
 
 Top
DeepVarvar Супермодератор
Отправлено: 21 Августа, 2015 - 17:24:03
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




Нет, я имею ввиду еще до какого-либо клика определить все целевые элементы и их триггеры, а потом при нажатии на триггер оббегать все элементы и если этот элемент не отностится к этому триггеру тогда элемент скрыть, а если относится, то уже тогглить его.
 
 Top
Алексей Постика
Отправлено: 21 Августа, 2015 - 17:30:10
Post Id


Новичок


Покинул форум
Сообщений всего: 5
Дата рег-ции: Авг. 2015  


Помог: 0 раз(а)




[quote=DeepVarvar]Нет, я имею ввиду еще до какого-либо клика определить все целевые элементы и их триггеры, а потом при нажатии на триггер оббегать все элементы и если этот элемент не отностится к этому триггеру тогда элемент скрыть, а если относится, то уже тогглить его.[/qгщеу]

смотри у меня есть загрузка данных на сайт из БД, где я формирую дивф с данными:
for($j=1;$j<=$del;$j++)
{
echo "<div id='".$j."' style='display: none;'>";
for($i=1;$i<4;$i++)
{

$alsql=("select * from kal where (ID = '{$i}')");
echo $row["datetime"]."<br/>";
$row=mysql_fetch_array($result);

}
echo "</div>";
echo "<br/>";
}

потом я хочу сделать так что бы при нажатии на ссылку причем не обязательно в последовательности у меня появлялся тот номер дива который написан на ссылке, а предыдущий исчезал. Ну и как раз предыдущий код наполовину осуществил эту задачу. Как ее реализовать так как ты говоришь с триггерами ?
 
 Top
DeepVarvar Супермодератор
Отправлено: 21 Августа, 2015 - 17:40:01
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




триггер -- это твоя ссылка
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« HTTP и PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB