html - JavaScript Cookie not writing based on URL Attributes -


i wrote script creates cookie, , sets name , value based on form data ?docname=,

the getvalue comes script gets form data:

<script type="text/javascript"> <!-- hide old browsers  function getvalue(varname) {   // first, load url variable   var url = window.location.href.replace(new regexp( "\\+", "g" ), "%20" )    // next, split url ?   var qparts = url.split("?");    // check there querystring, return "" if not   if (qparts.length == 0)   {     return "";   }    // find querystring, after ?   var query = qparts[1];    // split query string variables (separates &s)   var vars = query.split("&");    // initialize value "" default   var value = "";    // iterate through vars, checking each 1 varname   (i=0;i<vars.length;i++)   {     // split variable =, splits name , value     var parts = vars[i].split("=");      // check if correct variable     if (parts[0] == varname)     {       // load value variable       value = parts[1];        // end loop       break;     }   }    // convert escape code   value = unescape(value);    // convert "+"s " "s   value.replace("+"," ");    // return value   return value; }  // end hide --> </script>  <script> function savedoc() { var docname= getvalue("docname"); // these go off script form data var save = getvalue("save"); var url = window.location.href; } if (docname != '') { setcookie(docname,url,730); } else {  // nothing else } </script> 

it supposed created when user clicks link:

<a href="#" onclick="savedoc()" role="button" class="btn" data-toggle="tooltip" data-placement="bottom" id="save" title="" data-original-title="save"><i class="icon-folder-open"></i></button> 

i ran error script of answer , said uncaught referenceerror setcookie not defined.

but when script on page checks it, not there.

why isn't creating cookie?

like right? {

var docname= getvalue("docname"); // these go off script form data     var save = getvalue("save");     var url = window.location.href; } function setcookie(name, value, days) {     if (days) {         var date = new date();         date.settime(date.gettime() + (days * 24 * 60 * 60 * 1000));         var expires = "; expires=" + date.togmtstring();     }     else var expires = "";     document.cookie = name + "=" + value + expires + "; path=/"; } function savedoc() {     if (docname != '') {         setcookie(docname,url,730);     }     else {      // nothing else     } } // helps find errors if exist window.onerror = function(errormessage, url, line) {     var errortext = 'message: ' + errormessage + '\nurl: ' + url + '\nline: ' + line;     alert(errortext); } 

your savedoc function must including if statement:

<script type="text/javascript"> function savedoc() {     var docname= getvalue("docname"); // these go off script form data     var save = getvalue("save");     var url = window.location.href;     if (docname != '') {         setcookie(docname,url,730);     }     else {      // nothing else     } } // helps find errors if exist window.onerror = function(errormessage, url, line) {     var errortext = 'message: ' + errormessage + '\nurl: ' + url + '\nline: ' + line;     alert(errortext); } </script> 

edit

explained here more setting cookie. , setcookie function should defined until savedoc function:

<script type="text/javascript"> function setcookie(name, value, days) {     if (days) {         var date = new date();         date.settime(date.gettime() + (days * 24 * 60 * 60 * 1000));         var expires = "; expires=" + date.togmtstring();     }     else var expires = "";     document.cookie = name + "=" + value + expires + "; path=/"; } function savedoc() {     // save doc here } </script> 

Comments

Popular posts from this blog

linux - xterm copying to CLIPBOARD using copy-selection causes automatic updating of CLIPBOARD upon mouse selection -

c++ - qgraphicsview horizontal scrolling always has a vertical delta -