Ackermann Michael: Daten aus Textfeldern in Cookies speichern

Beitrag lesen

Hallo

Ich habe hier ein Script mit dem ich Daten aus Textfeldern in Cookies speichern kann.
Und zwar will ich ein Online MetaTag Generator erstellen.
Da will ich das man die eingegebenen Daten, zur weiteren Bearbeitung, speichern kann.
Und da wird es notwendig das folgenden Text zu speichern :
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

Hier nun das Problem :
Es ist leider nicht möglich den ; (KommaStrich) zu speichern. Gibt man bei dir beispielsweise im Feld "Text-1" dies ein :
www;www
Löscht dann die Felder - Und läd dann das Gespeicherte, erscheint im Feld "Text-1" :
www
Und im Feld "Text-2" dies :
www
Der ; (KommaStrich) bewirkt also das ein neues Feld angesprungen wird, anstatt das der komplette Text (www;www) in Textfeld-1 gespeichert wird.

Ich bräuchte aber gerade diesen ; KommaStrich in einem Textfeld, siehe zu speichernden MetaTag oben.
Hat von euch jemand eine Idee wie man dieses Problem lösen kann ?

Hier nun der Script :

<html><head><title>Daten speichern</title>

<script language="JavaScript" type="text/javascript">
<!--
var AnzTage = 365;
var Elemente = 'Text-1;Text-2';
var CookieName = 'FormularInhalt';

function Speichern()
{
  var spElem = Elemente.split(';');
  var SpeicherWert = '';

for (var i=0; i < spElem.length; i++)
    SpeicherWert += document.formular[spElem[i]].value + ';';

SpeicherWert = SpeicherWert.substring(0, SpeicherWert.length-1);
  alert ('Daten erfolgreich gespeichert!');

var expdate = new Date();
  FixCookieDate (expdate);
  expdate.setTime (expdate.getTime() + (AnzTage * 24 * 60 * 60 * 1000));

SetCookie (CookieName, SpeicherWert, expdate);}

function Laden()
{  if (GetCookie(CookieName))
{  var laElem = GetCookie(CookieName).split(';');
   var spElem = Elemente.split(';');
   for (var i=0; i < laElem.length; i++)
   if (laElem[i])
   document.formular[spElem[i]].value = laElem[i];  }}

function Loeschen()
{  var Elem = Elemente.split(';');
   for (var i=0; i < Elem.length; i++)
   document.formular[Elem[i]].value = '';}

//-->
</script>

<script language="JavaScript" type="text/javascript">
<!--
function getCookieVal (offset) {
  var endstr = document.cookie.indexOf (";", offset);
  if (endstr == -1)
    endstr = document.cookie.length;
  return unescape(document.cookie.substring(offset, endstr));
}

function FixCookieDate (date) {
  var base = new Date(0);
  var skew = base.getTime(); // dawn of (Unix) time - should be 0
  if (skew > 0)  // Except on the Mac - ahead of its time
    date.setTime (date.getTime() - skew);
}

function GetCookie (name) {
  var arg = name + "=";
  var alen = arg.length;
  var clen = document.cookie.length;
  var i = 0;
  while (i < clen) {
    var j = i + alen;
    if (document.cookie.substring(i, j) == arg)
      return getCookieVal (j);
    i = document.cookie.indexOf(" ", i) + 1;
    if (i == 0) break;
  }
  return null;
}

function SetCookie (name,value,expires,path,domain,secure) {
  document.cookie = name + "=" + escape (value) +
    ((expires) ? "; expires=" + expires.toGMTString() : "") +
    ((path) ? "; path=" + path : "") +
    ((domain) ? "; domain=" + domain : "") +
    ((secure) ? "; secure" : "");
}

function DeleteCookie (name,path,domain) {
  if (GetCookie(name)) {
    document.cookie = name + "=" +
      ((path) ? "; path=" + path : "") +
      ((domain) ? "; domain=" + domain : "") +
      "; expires=Thu, 01-Jan-70 00:00:01 GMT";
  }
}
//-->
</script>

</HEAD><body>

<form name="formular">
   Text-1 <input type="text" name="Text-1" size="40" maxlength="40">
        Text-2 <input type="text" name="Text-2" size="40" maxlength="40">
</form>
<a href="#" onClick="Speichern();return false;">Daten speichern</a><br><br>
<a href="#" onClick="Laden();return false;">Daten laden</a><br><br>
<a href="#" onClick="Loeschen();return false;">Formularfelder löschen</a>

</body></html>

Ich komm hier echt nicht weiter.
Könntet Ihr mir helfen ?
Danke im vorraus
Michael