Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript][HTML] Problem ze spacjami w window.location (formularz)
Forum PHP.pl > Forum > Przedszkole
Zyga24
Witam,

Mam problem z formularzem:

  1. <form onsubmit="window.location='/strona-'+this.textfield.value;return false;">
  2. <input type="text" id="textfield" name="coto" value="" size="11" />
  3. <input type="submit" id="submit" name="submit" value="Go" />
  4. </form>


Jeśli w formularzu pojawi sięwięcej niż jedno słowo (+this.textfield.) to dostaje taki link:
/strona-słowo słowo a powinno być np:
/strona-słowo+słowo

Jak zamienić spacje (między wyrazami) np na '-' lub '+' , tak , aby link był poprawny, np na '-' lub '+' ?
Spawnm
Użyj escape().
Zyga24
Czyli chodzi o:

  1. content = document.getElementById(content_element).value;
  2. content = escape(content);


Ale jak to w moim przypadku, zwrócić do formularza ?
Spawnm
Zobacz:
Kod
<form onsubmit="window.location='/strona-'+escape(this.textfield.value);return false;">


Btw. w jakiej przeglądarce testujesz? Bo ff escapuje z automatu.
Zyga24
Testuje w FF

Czyli niby w FF, nie musze tego używać ? smile.gif
Crozin
1. Dane musisz zawsze odpowiednio przefiltrować przed wrzuceniem nich do adresu URL.
2. Nie powinieneś korzystać z escape(). Użyj encodeURIComponent(). http://xkr.us/articles/javascript/encode-compare/
Zyga24
Cytat(Spawnm @ 2.09.2012, 19:54:11 ) *
Zobacz:
Kod
<form onsubmit="window.location='/strona-'+escape(this.textfield.value);return false;">


Nie działa mi to:
<form onsubmit="window.location='/szukaj-'+escape(this.textfield1.value)+'-1';return false;">
dostaje wciąż linki ze spacjami :/

Poza tym chodzi mi nie tylko o spacje. Chciałbym zmodyfikować to co jest wpisane w formularz, np zamienić wielkośc liter, usunąć niedozwolone znaki, ogonki i ogólnie
za pomocą php przerobić wartość z formularza i wysłać go z przerobioną wartością.

Jak w takim razie, przypisać do zmiennej wartosć this.textfield1.value i po przerobieniu wysłać formularz ze zmodyfikowanym wpisem ?



To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.