Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/18: Рейтинг темы: голосов - 18, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 12.07.2013
Сообщений: 14

Изменение стиля по клику мыши

02.07.2014, 15:50. Показов 3482. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Делаю страницу бронирования билетов в кино. Все былеты берутся из базы данных.
Хочу чтоб при клике мышью(onclick) менялся стиль(class) блока <div>.
Возникла проблема с изменением стиля, так как вместо имени стиля использую переменную.
Onclick попросту не работает. Подскажите, каким способом это можно исправить?

PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
<?php header('Content-Type: text/html; charset=utf-8'); ?>
<html>
<head>
<title>Бронирование</title>
</head>
<style>
div{
display: table-cell;
vertical-align: middle;
}
div.otstup{
padding-left: 200px;
}
.box2{
border-radius: 4px; /* Радиус границ*/
 margin-left: 4px; 
float:left;
display:table-cell; 
vertical-align: middle;
text-align: center;
width: 40px;
height:30px;
}
 
.box_free {
background-image: url(free.png);
border-radius: 4px; /* Радиус границ*/
margin-left: 4px; 
margin-top:4px;
float:left;
display:table-cell; 
vertical-align: middle;
text-align: center;
width: 30px;
height:30px;
 
border: 1px solid #888;
-moz-transition: all 0.3s ease-out;
-o-transition: all 0.3s ease-out;
-webkit-transition: all 0.3s ease-out;
cursor: pointer;}
 
.box_free:hover {
background-image: url(choice.jpg);
-webkit-transform: scale(1.4);
-moz-transform: scale(1.4);
-o-transform: scale(1.4);
}
 
.box_select {
background-image: url(select.jpg);
border-radius: 4px; /* Радиус границ*/
 margin-left: 4px; 
 margin-top:4px;
float:left;
vertical-align: middle;
text-align: center;
width: 30px;
height:30px;
text-indent: 0px;
border: 1px solid #888;
-moz-transition: all 0.3s ease-out;
-o-transition: all 0.3s ease-out;
-webkit-transition: all 0.3s ease-out;
cursor: pointer;
}
.box_select:hover {
background-image: url(select.jpg);
vertical-align: middle;
-webkit-transform: scale(1.4);
-moz-transform: scale(1.4);
-o-transform: scale(1.4);
}
.box_busy {
background-image: url(busy.png);
 border-radius: 6px; /* Радиус границ*/
 margin-left: 4px; 
margin-top:4px;
float:left;
vertical-align: middle;
text-align: center;
width: 30px;
height:30px;
text-indent: 0px;
border: 1px solid #888;
}
 
 
 
</style>
<script type="text/javascript">
 
 </script>
 
 
<body text="black" background= "fone1.jpg">
</br>
<h3 align="center">Выберете место для бронирования</h3>
 
<div class="otstup">
<?php 
echo'<form name="form1" metod="post">';
    @ $db = mysql_pconnect('localhost', 'root', '');
        if (!$db)
        {
            echo 'Ошибка соединения с базой данных';
            exit;
        }  
  
        mysql_select_db('kino');
        $query = "select * from tickets";
        $result = mysql_query($query);
 
        $num_results = mysql_num_rows($result);
        
 
        
         $box2 = "box_select";
         
        for ($i=0; $i <$num_results; $i++)
        {       $row = mysql_fetch_array($result);
                if($row['Conditions']==1)   {
                $box = "box_busy";
                                        }
                else{
                $box = "box_free";
                    }
                if ($k==$row['Row'])
            {
                echo '<div id="'.$row['id_ticket'].'" class="'.$box.'"  value="'.$row['Place'].'" onclick="">'.$row['Place'].' </div>';
 
            }
            
                    else {
        
                            echo'</br>';
            
                            echo '<div class="box2">'.$row['Row'].' ряд</div>';
        
                            echo '<div  id="'.$row['id_ticket'].'" class="'.$box.'"  value="'.$row['Place'].'" onclick="">'.$row['Place'].'</div>';
                            $k=$row['Row'];
                        }
        }
            
        echo'<br>';
        echo'</form>';
    ?>
    
    </div>
    </body>
    </html>
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
02.07.2014, 15:50
Ответы с готовыми решениями:

Изменение стиля по клику
Люди я новичок, в чем проблема ? &lt;!DOCTYPE html&gt; &lt;html&gt; &lt;body&gt; &lt;p id=&quot;p1&quot; style=&quot;color:red;font-size:9pt;&quot;&gt; This is...

Изменение стиля по клику на элемент
Добрый день! Пытаюсь по клику изменить стиль элемента, теоретически делаю как мне кажется все правильно &lt;label...

Изменение стиля элемента по нажатию кнопки мыши
Здравствуйте! Помогите разобраться с реализацией. Желательно средствами CSS. Итак. У нас есть зеленая кнопка и мы её нажимаем. После...

13
Develo0per
 Аватар для and_y87
424 / 368 / 75
Регистрация: 27.02.2012
Сообщений: 1,379
Записей в блоге: 98
02.07.2014, 15:57
jenek0855, Ну это вам проще jQuery юзать...
Если хотите на лету менять слиль...

JavaScript
1
2
3
4
5
6
 $('#id_elementa').on(
  'click', 
  function(){ 
    $(this).toggleClass('active'); 
  }
 );
1
0 / 0 / 0
Регистрация: 12.07.2013
Сообщений: 14
02.07.2014, 16:23  [ТС]
Onclick заработал, но изменить стиль элемента всё же не удаётся
0
368 / 406 / 165
Регистрация: 29.05.2014
Сообщений: 1,494
02.07.2014, 16:36
Просто ставишь свой пхп код выше таблицы стилей и в зависимости от результата запроса меняешь сам стиль
PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
div.otstup{
padding-left:<?php
if ($a==1)
 {
   echo "200px;";
 }
else
 {
   echo "400px;";
 }
?>
}
0
Develo0per
 Аватар для and_y87
424 / 368 / 75
Регистрация: 27.02.2012
Сообщений: 1,379
Записей в блоге: 98
02.07.2014, 16:53
BarbosLV, Что за ужс...

Если уж так делать то по человечески:

PHP
1
2
3
4
5
6
7
8
9
10
11
12
<?
 
// Определение значения
 $css_var = ( $a == 1 ) ? '400' : '200';
 
 
// CSS ниже в коде
 
div.otstup{
    padding-left: <?= $css_var ?>
    /*...*/
}
Всё красиво, удобно, читаемо...
0
368 / 406 / 165
Регистрация: 29.05.2014
Сообщений: 1,494
02.07.2014, 16:58
Цитата Сообщение от and_y87 Посмотреть сообщение
Что за ужс...
Молодец возьми с полки пирожок.
Только вот большая половина форума твой пример даже прочесть не сможет.
0
Develo0per
 Аватар для and_y87
424 / 368 / 75
Регистрация: 27.02.2012
Сообщений: 1,379
Записей в блоге: 98
02.07.2014, 17:01
Цитата Сообщение от BarbosLV Посмотреть сообщение
Только вот большая половина форума твой пример даже прочесть не сможет.
Пару Тройку лет назад назад я тоже не мог... научился... пускай и половина форума учится, именно для этого люди на этом форуме и сидят...
0
0 / 0 / 0
Регистрация: 12.07.2013
Сообщений: 14
02.07.2014, 17:33  [ТС]
Цитата Сообщение от BarbosLV Посмотреть сообщение
Просто ставишь свой пхп код выше таблицы стилей и в зависимости от результата запроса меняешь сам стиль
PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
div.otstup{
padding-left:<?php
if ($a==1)
 {
   echo "200px;";
 }
else
 {
   echo "400px;";
 }
?>
}
BarbosLV, мне нужно изменить стиль элемента, а не сам стиль
0
368 / 406 / 165
Регистрация: 29.05.2014
Сообщений: 1,494
02.07.2014, 17:38
Цитата Сообщение от jenek0855 Посмотреть сообщение
мне нужно изменить стиль элемента,
И что сие значит?
<div class="bigudi"> заменить на<div class="makaroni">?
0
0 / 0 / 0
Регистрация: 12.07.2013
Сообщений: 14
02.07.2014, 17:52  [ТС]
BarbosLV, Именно
0
368 / 406 / 165
Регистрация: 29.05.2014
Сообщений: 1,494
02.07.2014, 17:56
Цитата Сообщение от jenek0855 Посмотреть сообщение
Именно
Ну так ты же сам написал что этот вариант не работоспособен. Я подозреваю что из за JS . Вариант обойти изменить сам стиль не меняя названия.
0
0 / 0 / 0
Регистрация: 12.07.2013
Сообщений: 14
02.07.2014, 17:59  [ТС]
BarbosLV, просто тогда все остальные элементы, имеющие такой же класс, изменятся
0
368 / 406 / 165
Регистрация: 29.05.2014
Сообщений: 1,494
02.07.2014, 18:15
Логично. Что то я не подумал о том что элементов на странице больше одного.
Ну тогда капай свой JS. Сам пых то не должен давать сбоев.
Кликните здесь для просмотра всего текста
PHP/HTML
1
2
3
4
5
6
7
8
9
10
<div class="<?php if($_POST['color']) {echo $_POST['color'];}else {echo "red";} ?>">
<form method="post">
<select name="color">
<option value="red">красный</option>
<option value="green">зелёный</option>
<option value="orange">оранжевый</option>
</select>
<input type="submit" value="OK" />
</form>
</div>

Кликните здесь для просмотра всего текста
CSS
1
2
3
4
5
6
7
8
9
.red{
    background-color:red;
}
.green{
    background-color:green;
}   
.orange{
    background-color:orange;
}
1
 Аватар для alexsamos33
669 / 640 / 335
Регистрация: 26.04.2014
Сообщений: 2,122
02.07.2014, 20:45
PHP/HTML
1
echo'<form name="form1" metod="post">';
Не metod, а method...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
02.07.2014, 20:45
Помогаю со студенческими работами здесь

Изменение толщины и стиля линий при нажатии кнопок мыши
Нужно сделать программу на паскале, при нажатии левой кнопки мыши появляется линия сплошная, если нажать на линию то она станет толще и так...

Изменение размера PictureBox по клику мыши
...Доброго времени суток, уважаемые форумчане... Возник вопрос: возможно ли сделать так, чтобы по клику PictureBox разворачивался на весь...

Qt + Opengl изменение цвета по клику мыши
Здравствуйте, начал изучать qt и вместе с ним opengl, никак не могу понять, как например перерисовать объект(или изменить к примеру цвет)?...

Движения прямоугольника по экрану и изменение цвета по клику мыши
Направление движения прямоугольника по экрану изменяется щелчком по клавише мыши случайным образом. При этом каждый второй щелчок меняет...

JS или Jquery смена стиля HTML по клику на кнопку с сохранением
Имеется кнопка: &lt;a class=&quot;block&quot; href=&quot;#&quot;&gt;Тема&lt;/a&gt; На неё по клику надо сделать добавление стиля к HTML ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru