Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Как приделать Cookies (https://javascript.ru/forum/dom-window/6523-kak-pridelat-cookies.html)

maxell 02.12.2009 20:37

Как приделать Cookies
 
Есть код:



Код:

function OnOff(obj)
{
        var
                DivOn,
                DivOff,
                Ctrl;
               
        switch(obj.id)
        {
                case "RadioGroup1_0" :
                {
                        DivOn="D1";
                        DivOff="D2";
                       
                        break;
                }
                case "RadioGroup1_1" :
                {
                        DivOn="D2";
                        DivOff="D1";
                       
                        break;
                }
        }
       
        if(Ctrl=document.getElementById(DivOn))
                Ctrl.style.display="block";
        if(Ctrl=document.getElementById(DivOff))
                Ctrl.style.display="none";
}
...
<label><input type="radio" name="Radio1" value="1" id="RadioGroup1_0" onclick="OnOff(this);" />Переключатель1</label>
<label><input type="radio" name="Radio1" value="2" id="RadioGroup1_1" onclick="OnOff(this);" />Переключатель2</label>       

<div id="D1"></div>
<div id="D2" style="display: none></div>



Подскажите, пожалуйста, как сделать так чтобы на время сессии переключатель сохранял свое последнее положение?

Gvozd 02.12.2009 20:45

http://javascript.ru/unsorted/top-10...e-deletecookie десу

maxell 02.12.2009 20:56

Цитата:

Сообщение от Gvozd (Сообщение 37023)

Т.е. просто вставить этот код и все? я в этом мало, что понимаю

Gvozd 02.12.2009 21:22

Цитата:

Сообщение от maxell
я в этом мало, что понимаю

ваши проблемы
изучайте, чтобы понимать
за вас все писать никто тут не будет
только в разделе работа

maxell 02.12.2009 21:26

я представляю что должно выглядеть примерно так:

Код:

<script> 
    function OnOff(obj)
{
        var
                DivOn,
                DivOff,
                Ctrl;
               
        switch(obj.id)
        {
                case "RadioGroup1_0" :
                {
                        DivOn="D1";
                        DivOff="D2";
                       
                        break;
                }
                case "RadioGroup1_1" :
                {
                        DivOn="D2";
                        DivOff="D1";
                       
                        break;
                }
        }
       
        if(Ctrl=document.getElementById(DivOn))
                Ctrl.style.display="block";
        if(Ctrl=document.getElementById(DivOff))
                Ctrl.style.display="none";
}

function setCookie( name, value, expires, path, domain, secure ) {
    var today = new Date();
    today.setTime( today.getTime() );
    if ( expires ) {
        expires = expires * 1000 * 60 * 60 * 24;
    }
    var expires_date = new Date( today.getTime() + (expires) );
    document.cookie = name+'='+escape( value ) +
        ( ( expires ) ? ';expires='+expires_date.toGMTString() : '' ) + //expires.toGMTString()
        ( ( path ) ? ';path=' + path : '' ) +
        ( ( domain ) ? ';domain=' + domain : '' ) +
        ( ( secure ) ? ';secure' : '' );
}

function getCookie( name ) {
    var start = document.cookie.indexOf( name + "=" );
    var len = start + name.length + 1;
    if ( ( !start ) && ( name != document.cookie.substring( 0, name.length ) ) ) {
        return null;
    }
    if ( start == -1 ) return null;
    var end = document.cookie.indexOf( ';', len );
    if ( end == -1 ) end = document.cookie.length;
    return unescape( document.cookie.substring( len, end ) );
}
 </script> 

<label><input type="radio" name="Radio1" value="1" id="RadioGroup1_0" onclick="OnOff(this);" />Переключатель1</label>
<label><input type="radio" name="Radio1" value="2" id="RadioGroup1_1" onclick="OnOff(this);" />Переключатель2</label>       

<div id="D1"></div>
<div id="D2" style="display: none></div>

А вот со значениями не могу разобраться, что куда подставлять? Я не прошу сделать за меня, я прошу объяснить )

Gvozd 02.12.2009 21:40

во время установки нового значения переключателя(например по событию onclick соответствующего элемента) выставляете новое значение куки при помощи упомянутой выше функции
призагрузке же страницы, выставляем соответствующему radio свойство checked в true, получив установленное раннее значение из кук
Если для вас и это разжеванное объяснение непонятно будет, то нету смысла вам пытаться подробнее объяснить, пока вы не выучите основы языка, и не будете говорить на одном со мной языке
Цитата:

Здравствуйте!

Судя по вашему сообщению, вы ну совсем не знаете javascript.

Освойте основы языка и вопрос отпадет сам, полностью или частично.
А с чем не справитесь - поможем.

На сайте javascript можно начать изучать с учебника, раздел Основы javascript.
Возможно, вам также понадобится HTML - учебник есть, например, здесь: http://ru.html.net/tutorials/html/

Задавайте конкретные вопросы по ходу дела.

maxell 02.12.2009 22:35

Ладно, спасибо, буду разбираться дальше!

maxell 02.12.2009 23:03

Цитата:

Сообщение от Gvozd (Сообщение 37028)
во время установки нового значения переключателя(например по событию onclick соответствующего элемента) выставляете новое значение куки при помощи упомянутой выше функции
призагрузке же страницы, выставляем соответствующему radio свойство checked в true, получив установленное раннее значение из кук
Если для вас и это разжеванное объяснение непонятно будет, то нету смысла вам пытаться подробнее объяснить, пока вы не выучите основы языка, и не будете говорить на одном со мной языке

я понимаю о чем идет речь) Сам принцип я тоже понимаю, но я не знаю самого языка. Вот в чем проблема! А чтобы выполнить всего одну задачу, приходиться изучать новый для меня язык, а это время :) И денег тоже нет :no:

Gvozd 02.12.2009 23:28

Цитата:

Сообщение от maxell
А чтобы выполнить всего одну задачу, приходиться изучать новый для меня язык, а это время И денег тоже не

Цитата:

Сообщение от Gvozd
ваши проблемы

этот форум(и вообще ресурс) прежде всего для тех кто изучает/пытается изучить/уже программирует на Java Script
Если вы не собираетесь его изучать(и потратить время на это) для решения СВОЕЙ проблемы, и не готовы заплатить за это, то и никто не станет тратить свое время для решения ВАШЕЙ проблемы
И то, что для нас этот код простой-далеко не аргумент
тут не общество доброй воли
добровольный комунизм на данный момент является утопией, поэтому делать что-то только потому что ты это умеешь, и кому-то это необходимо никто на станет.
придется расплачиваться вам своими ресурсами, так повсюду капитализм.
Если вы не способны заплатить 5-10$ за простой скрипт, то будьте любезны потратить день-другой на изучение языка.
лично я если бы мне понадобился один-единственный скрипт на незнакомом языке, потратил бы деньги, а если бы знал, что мне их понадобится далеко не один, потратил бы время

maxell 02.12.2009 23:37

Не надо обобщать, не все такие!

Gvozd 03.12.2009 00:03

жди тогда того, кто думает отлично от меня
Я достаточно резко выражаюсь, и мои мысли часто являются крайними случаями в тех или иных аспектах
так, что я гарантирую вам, что не все такие как я, и есть отличные от меня люди.
Но, все же, мало кто любит лентяеев.
Вы не хотите не приложить усилий для разрешения своей проблемы, и надеетесь, что кто-то решит ее за вас.
Вы-лентяй в моем понимании.
Если я не прав, то докажите мне, приведя мне свои действия которые вы выполнили самостоятельно для решения вашей проблемы.
кроме поиска этого форума в гугле, и размещения на нем своего вопроса.
если вы не можете привести ничего что вы сделали, приведите то, что вы готовы сделать для решения вашей проблемы, действуя согласно нашим подсказкам
ВЫ имеете в своем распоряжении:
1)крупнейший ресурс по JS в рунете
2)указание тем, необходимых вам для изучения, чтобы решить конкретно вашу проблему
что вам еще нужно?
готовое решение?тогда вы лентяй, как я и считаю.
какой-то другой материал, который я не упомянул?
тогда, я с удовольствием отвечу на ваши уточняющие вопросы по поводу того, что вам надо еще изучить для решения вашей проблемы.
Так что?
вы готовы решить свою проблему пользуясь общедосутпными материалами, и моим(еще может чьим-то) указанием на конкртеные материалы, или хотите, как лентяй поручить ее решение другому человеку?
PS если повторяюсь, прошу извинить-пьян я
но общее мнение по этомй поводу примерно атково

Gozar 03.12.2009 15:29

Gvozd,
+1
В последнее время народ обнаглел настолько, что уже практически не просит, а требует решить его проблему.

ps: скучно:cray:


Часовой пояс GMT +3, время: 12:46.