как отобразить установленный файл cookie на другой HTML-странице при отправке - PullRequest
0 голосов
/ 29 марта 2011

Я занимаюсь созданием HTML, используя jquery cookie.я уже знаю, как устанавливать, получать и удалять куки.Одна вещь, которую я не знаю, это как отобразить установленные куки на следующей странице.У меня есть этот HTML кодов:

    <FORM id = 'login' meth0d = 'post' action = 'Coutput.html' >            
        <input id = 'name' type = "text"  value = ''>           
        <input id="btnSet" type="submit" value="Go"/>
        <input id="btndelete" type="button" value="delete cookie"/>
    </form>

и у меня есть этот код JavaScript:

    $('form#login :submit').addClass('inputSubmitBtn').click(function(){
       if($('#name').val() == "" ){         
          $("#name").focus();
          alert('please input name');
          return false;
       }
       else{
          $.cookie("cookie_name", null);
          $.cookie('cookie_name', $('#name').val());
          alert('new cookie name' +$('#name').val()));
          $('#name').append($.cookie('cookie_name'));
       };           
    });

вопросы:

  1. почему это каждый разя использовал $.cookie('cookie_name', $('#name').val(), { expires: null, path: '/', domain: 'cegi1.html', secure: true });, мой cookie всегда установлен на ноль, хотя я установил другой, он всегда возвращает ноль?

  2. как я могу отобразить мой недавно установленный куки в Coutput.html?(например, name = luke, вывод в Coutput.html должен быть «welcome luke»)

спасибо за чтение.пожалуйста помогите ..

1 Ответ

1 голос
/ 29 марта 2011

Кажется, что <input id="btnSet" type="submit" value="Go"/> отправляет форму на другую страницу перед оценкой $('form#login :submit').click(function(). А также у вас есть ошибка на alert('new cookie name' +$('#name').val()));. Это должно работать.

<script src="jquery.js"></script>
<script src="jquery.cookie.js"></script>
<script>
$(function ()
{
    $("#btnSet").click(function(){
       if($('#name').val() == "" ){         
          $("#name").focus();
          alert('please input name');
          return false;
       }
       else{
          $.cookie("cookie_name", null);
          $.cookie('cookie_name', $('#name').val());
          alert('new cookie name' +$('#name').val());
          $('#name').append($.cookie('cookie_name'));
       };           
        window.location = $(this).parent('form').attr("action");
    });
})

</script>

 <form id = 'login' meth0d = 'post' action = 'Coutput.html' >            
        <input id ="name" type = "text"  value="">           
        <input id="btnSet" type="button" value="Go"/>
        <input id="btndelete" type="button" value="delete cookie"/>
 </form>

На моем Coutput.html у меня есть

<script src="jquery.js"></script>
<script src="jquery.cookie.js"></script>
<script>
    alert($.cookie("cookie_name") );
</script>

Если вы хотите удалить cookie при закрытии окна, используйте событие window.unload и в jquery perhap this . И вы можете удалить cookie, сбросив его на ноль.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...