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
Post a Comment