2015-05-27 6 views
0

Я пишу нижеприведенный код, чтобы установить cookie только тогда, когда отправлена ​​форма с id = AuditDetails, однако следующий код устанавливает cookie каждый раз, когда страница перезагружается. Что мне не хватает?Настройка файла cookie только при отправке формы

$(document).ready(function() { //Initial call to the functions. 
    showdept(); 
    $("#AuditDetails").on("submit", function() { 
     document.cookie = "active_audit=1;path=/;expires=1;" 
    }); 
}); 
+0

Что такое AuditDetails? вставьте свой html, пожалуйста, – Alex

+0

@MohamedBelal 'форма с id = AuditDetails отправлена', это форма и не нужно событие' click' – Tushar

+0

Вы можете проверить оповещение в этом разделе отправки? если предупреждение приходит 2 раза, значит, ваш кодовый вызов 2 раза. если ваш код 2 раза, то вам нужно предпринять какие-то действия. Я не думаю, что это происходит 2 раза. – Sunny

ответ

-1

Обновлено

Существует решение по How to detect/track postback in javascript?

И

How can I check for IsPostBack in JavaScript?

Вам нужно на стороне сервера

if(IsPostBack) 
    { 
     ClientScript.RegisterClientScriptBlock(GetType(), "IsPostBack", "var  isPostBack = true;", true); 
    } 

А на стороне клиента

 if(isPostBack) 
       { // do your thing 

       } 
     else 
      { 
       $.cookie("name","value"); 
      } 

$ .cookie является синтаксисом JQuery. Вы можете скачать с JQuery http://code.jquery.com/jquery-1.11.3.min.js

И JQuery плагин для печенья здесь https://github.com/carhartl/jquery-cookie

добавить оба сценария в сценарий SRC = «...»> в заголовке HTML

В основном вы пишете Javascript переменной через сервер скрипт и читать его на стороне клиента

Надеются, что это поможет

+0

ClientScript.RegisterClientScriptBlock - это asp.net. если вы используете java или php, то я уверен, что должен быть эквивалент этого присутствующего – Alex

+0

Я новичок в javascript, и все это мне неизвестно. Я просто не понимаю, почему он настраивает cookie каждый раз, когда я перезагружаю страницу, в то время как он должен устанавливать cookie только при отправке формы. Не могли бы вы помочь мне с кодом здесь? – Maulik

+0

Я обновил свой ответ – Alex

0

Вам может понадобиться reset the form, когда он представляется

onsubmit="this.submit(); this.reset(); return false;" 

Так что, только когда оно будет отправлено, файлы cookie будут установлены.

Смежные вопросы