powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / 2 вопроса по JQuery
7 сообщений из 7, страница 1 из 1
2 вопроса по JQuery
    #36157939
Саабразим Аль-каши Бухани
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть примерно такая страница:
Код: plaintext
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.
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
      <script type="text/javascript" src="js/jquery-1.3.1.js"/>
      <script type="text/javascript">
        $(document).ready(function() {
            $("input[type=checkbox]").click(function() {
               DoIt();
            });
        });

        $(document). load(function() {
            DoIt();
        });

        function DoIt() {
                var r = $('input[checked=true]').length;
                if ((r >  1 )&&(r <=   3 )){
                    $("label#counter").removeClass("accept");
                    $("label#counter").removeClass("deny");
                    $("label#counter").addClass("warn").html('Выбрано продуктов: ' + r);
                }else if ((r <=  1 )||(r >  5 )){
                    $("label#counter").removeClass("accept");
                    $("label#counter").removeClass("warn");
                    $("label#counter").addClass("deny").html('Выбрано продуктов: ' + r);
                }else {
                    $("label#counter").removeClass("warn");
                    $("label#counter").removeClass("deny");
                    $("label#counter").addClass("accept").html('Выбрано продуктов: ' + r);
                }
        }

    </script>
    <style type="text/css" >
        .deny{color:#d84836}
        .warn{color:#edc80b}
        .accept{color:#649e42}
    </style>

        <link rel="stylesheet" type="text/css" href="default.css"/>
    </head>
    <body link="#2a413e" alink="#2a413e" vlink="#2a413e" leftmargin="1" leftmargin="0" topmargin="0">
   <label id="counter" class="deny">Выбрано позиций:  0 </label><br/>
     <form action="mc?action=cookbook&page=order" method="POST">
	<input id="prod1" type="checkbox" name="pr1"><label for="prod1">Позиция1</label><br>
	<input id="prod2" type="checkbox" name="pr2"><label for="prod2">Позиция2</label><br>
                <!-- Ну и т.д. -->
	<input id="prod10" type="checkbox" name="pr10"><label for="prod10">Позиция3</label><br>
	<input id="prod11" type="checkbox" name="pr11"><label for="prod11">Позиция4</label><br>
        <center>
            <input type="reset" name="name" title="title" value="Сбросить" />
            <input type="submit" name="name" title="title" value="Подтвердить" />
        </center>
    </form>
    </body>
</html>
Соответственно при выборе определенного количества галочек текст и цвет метки меняются. По нажатии "подтвердить" фотма уезжает на другую страницу где обрабатывается. На той странице есть кнопка "вернуться" такого вида:
Код: plaintext
<center><input type="button" name="repeat" value=" Вернуться " OnClick="history.back(1);"></center>
Вопрос №1 вот в чем: при возврате на первую страницу текст всегда - "выбрано позиций: 0" (по дефолту) и красный.
Что нужно сделать и где, чтобы при возврате метка окрашивалась в нужный цвет с правильным значением кол-ва выбраных позиций?
Вопрос № 2. Как грамотнее переписать этот говнокод:
Код: plaintext
1.
2.
3.
                   $("label#counter").removeClass("accept");
                    $("label#counter").removeClass("deny");
                    $("label#counter").addClass("warn").html('Выбрано продуктов: ' + r);
 
...
Рейтинг: 0 / 0
2 вопроса по JQuery
    #36157962
IDVsbruck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
По первому вопросу ответ напрашивается сам собой - через сервер ... при переходе на вторую скидываем результат, при возврате получаем. Благо, аджакс легко с этим справляется.

По второму - все ставь в цепочку. Кроме этого, есть функция смены класса, а не удаления и добавления, используй ее.
...
Рейтинг: 0 / 0
2 вопроса по JQuery
    #36157971
Elain
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Саабразим Аль-каши Бухани, на сколько я понял вопрос, то при сабмит формы происходит с перезагрузкой страницы.... Если так то пиши в сессию или кука сериализованный массив со жмакнутыми галками..... если происходит роллбек то сделай функцию по обработке сериализованных данных.... На этом построены почти все многостраничные формы!
...
Рейтинг: 0 / 0
2 вопроса по JQuery
    #36158312
Саабразим Аль-каши Бухани
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IDVsbruck, Можете поподробнее на счет функции смены класса? Хотя бы как она назыввается.
Elain, Да, с перезагрузкой. Допустим, при сабмите нужное значение я засуну в куки (как в JS работать с сессией я вообще пока не в курсе), но я не очень понимаю (для начала) на какое событие вешать на первой странице извлечение из кук сохраненного значения (т.е. нажатие кнопки "назад" в браузере).
...
Рейтинг: 0 / 0
2 вопроса по JQuery
    #36158348
Elain
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Саабразим Аль-каши БуханиIDVsbruck, Можете поподробнее на счет функции смены класса? Хотя бы как она назыввается.
Elain, Да, с перезагрузкой. Допустим, при сабмите нужное значение я засуну в куки (как в JS работать с сессией я вообще пока не в курсе), но я не очень понимаю (для начала) на какое событие вешать на первой странице извлечение из кук сохраненного значения (т.е. нажатие кнопки "назад" в браузере).

Извлечение куки производи по событию onLoad это для JS или $(document).ready для JQuery
...
Рейтинг: 0 / 0
2 вопроса по JQuery
    #36158356
IDVsbruck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, конечно ... на оффсайте jQuery - http://docs.jquery.com/Attributes/toggleClass#class - toggleClass(). Там же посмотри - есть еще со свитчем.

Думаю, все же правильнее будет через сервер - как бы, более стандартизованно, что ли ... Да и гарантийно кроссбраузерно и "кошерно".
...
Рейтинг: 0 / 0
2 вопроса по JQuery
    #36158894
Саабразим Аль-каши Бухани
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / 2 вопроса по JQuery
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]