Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> JavaScript i formualrze, skasowanie zawartosci pola textarea po kliknieciu
nikodem92
post 21.12.2006, 09:17:06
Post #1





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 6.12.2006
Skąd: Kraków

Ostrzeżenie: (10%)
X----


Witam!

Mam taki oto kod:

Kod
<script LANGUAGE="JavaScript">
<!--

function czyscImie(AInput)
{
    if (AInput.value == 'Podaj swoje imie:') {
        AInput.value = '';
    }
    return true;
}

function czyscMail(AInput)
{
    if (AInput.value == 'Twój e-mail:') {
        AInput.value = '';
    }
    return true;
}

function czyscWiadomosc(AInput)
{
    if (AInput.value == 'Tresc wiadomosci') {
        AInput.value = '';
    }
    return true;
}


//-->
</SCRIPT>


i

  1. <form name="form" method="post" action="mail.php" >
  2. <br>
  3. <input type="text" name="imie" value="Podaj swoje imie:" onfocus="return czyscImie(this);"><br>
  4. <br>
  5. <input type="text" name="email" value="Twój e-mail:" onfocus="return czyscMail(this);"> <br>
  6. <br>
  7. <br>
  8. <textarea name="tresc" rows="7" cols="30" onfocus="return czyscWiadomosc(this);">Tresc wiadomosci:</textarea>
  9. <input type="submit" name="submit" value="wyslij">    
  10. <input type="reset" name="reset" value="kasuj"></p>
  11. </form>


i taki problem: po kliknieciu na pole textowe input jest git wszystko dziala, a po kliknieciu na pole textarea zawartośc sie nie kasuje.
I jeszcze chodzi mi o to jak ktos nic nie wpisał w pole to żeby powracała jego wartość value. Może ktoś pomóc?

Pozdrawiam,
Łukasz
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 7)
revyag
post 21.12.2006, 09:28:09
Post #2





Grupa: Przyjaciele php.pl
Postów: 2 258
Pomógł: 16
Dołączył: 21.09.2004
Skąd: Kielce

Ostrzeżenie: (0%)
-----


Nie kasuje się bo w textarea nie wpisałeś zawartości używając atrybutu value.


--------------------
-------------

------
Go to the top of the page
+Quote Post
nikodem92
post 21.12.2006, 09:53:28
Post #3





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 6.12.2006
Skąd: Kraków

Ostrzeżenie: (10%)
X----


nie napisałem tak, bo nie działa jak dam

  1. value="tresc wiadomosci"



Pozdrawiam,
Łukasz
Go to the top of the page
+Quote Post
revyag
post 21.12.2006, 10:37:04
Post #4





Grupa: Przyjaciele php.pl
Postów: 2 258
Pomógł: 16
Dołączył: 21.09.2004
Skąd: Kielce

Ostrzeżenie: (0%)
-----


Nie mam teraz jak sprawdzić, ale dla textarea spróbuj użyć innerHTML.
Musiałbyś mieć dodatkową funkcję:
Kod
function czyscTextarea(Tarea)
{
    if (Tarea.innerHTML == 'Tresc wiadomosci') {
        Tarea.innerHTML = '';
    }
    return true;
}


--------------------
-------------

------
Go to the top of the page
+Quote Post
JaRoPHP
post 21.12.2006, 14:36:23
Post #5





Grupa: Zarejestrowani
Postów: 675
Pomógł: 15
Dołączył: 7.11.2004
Skąd: Katowice

Ostrzeżenie: (0%)
-----


Funkcja którą napisałeś @nikodem92 działa prawidłowo, z tym, że sprawdza ona, czy treść w polu <textarea /> jest równa Tresc wiadomosci, a powinna sprawdzać, czy jest równa Tresc wiadomosci: (dwukropek na końcu!).

  1. function czyscWiadomosc(AInput) {
  2. if (AInput.value == 'Tresc wiadomosci:') {
  3. AInput.value = '';
  4. }
  5. return true;
  6. }


--------------------
Kto pyta, nie błądzi...
Kto zbłądził, ten pyta...
Go to the top of the page
+Quote Post
nikodem92
post 21.12.2006, 17:32:47
Post #6





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 6.12.2006
Skąd: Kraków

Ostrzeżenie: (10%)
X----


rozumiem że funkcję należy wywołać tak:
  1. onFocus="return czyscTextarea(this);"



jak tak to nie działa sad.gif

aha no racja. Wielkie dzieki.

i teraz jeszcze w odwrotną stronę: jak ktoś nic nie wpisał w pole to żeby powracała ta wartość co była wpisana w value.

i tak naskrobałem coś takiego:

Kod
function pokazWiadomosc(AInput}
{
   if (AInput.value == '') {
       AInput.value = 'Tresc wiadomosci:';
      }
   return true;
}


i html:
  1. onChange="return pokazWiadomosc(this);"


ale dziwnie nie dziala i jeszcze jak to napisalem to przestało dzialac to poprzednie sad.gif

Prosze o pomoc,
Łukasz
Go to the top of the page
+Quote Post
nospor
post 21.12.2006, 17:35:07
Post #7





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




jak na moj skromny gust to powinno byc onblur a nie onChange. masz to robic na wyjscie z inputa przeciez.


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
nikodem92
post 21.12.2006, 18:33:11
Post #8





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 6.12.2006
Skąd: Kraków

Ostrzeżenie: (10%)
X----


no racja, ale i tek nie dziala sad.gif ma ktoś jakiś pomysł?


dzieki za wszytsko dziala, bo zamiast dac:

Kod
function pokazWiadomosc(AInput)
{
   if (AInput.value == '') {
          AInput.value = 'Tresc wiadomosci:';
      }
   return true;
}


dałem:

Kod
function pokazWiadomosc(AInput}
{
   if (AInput.value == '') {
          AInput.value = 'Tresc wiadomosci:';
      }
   return true;
}


klamre zamiast nawiasu.

Pozdrawiam,
Łuaksz

Ten post edytował nikodem92 21.12.2006, 18:35:54
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 21:02