Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [AJAX][JavaScript] Wysłanie formularza bez przeładowania strony
-kubek3898-
post
Post #1





Goście







Na początku od razu mówię, użyłem szukajki, niestety nie znalazłem to czego szukam (IMG:style_emoticons/default/wink.gif)

Mam następujący kod:

  1. <body id='body_screen' class='login_screen'>
  2. <form action='login.php' method='post'>
  3. <div id='login' class=''>
  4. <div id='login_error'>Dane użyte podczas logowania nie były poprawne</div>
  5. <div id='login_controls'>
  6. <label for='username'>Użytkownik</label>
  7. <input type='text' size='20' id='username' name='username' value='' class='textinput'>
  8.  
  9. <label for='password'>Hasło</label>
  10. <input type='password' size='20' id='password' name='password' value='' class='textinput'> </div>
  11. <div id='login_submit'>
  12. <input type='submit' class='button' value="Zaloguj" />
  13. </div>
  14. </div>
  15. </form>
  16. </div>
  17. </body>


I teraz jak za pomocą AJAX'a zrobić tak, że po kliknięciu "Zaloguj" strona nie przeładowuje się tylko zostaje wypisany stosowny komunikat:

  1. <div id='login_error'>Dane użyte podczas logowania nie były poprawne</div>


lub

  1. <div id='login_ok'>Zalogowano!</div>



"Raczkuję" jak widać w temacie JS oraz AJAX, więc proszę o pomoc.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
ethann
post
Post #2





Grupa: Zarejestrowani
Postów: 56
Pomógł: 18
Dołączył: 7.04.2012

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


Na pewno dołączyłeś bibliotekę JQuery?
Podam Ci przykładowy kod użycia funkcji prepend, która pozwoli Ci uzyskać wymagany efekt.
Kod
<html>
<head>
<script type=text/javascript src="http://code.jquery.com/jquery-1.9.0.min.js"></script>
<script type=text/javascript>
function logowanie()
{
    if($('#nick').val() == '')
    {
        $('#login').prepend('<div id=\'login_error\'>Nie podano loginu.</div>');
    }
    else
    {
        $('#login').prepend('<div id=\'login_error\'>Podano login.</div>');
    }
}
</script>
</head>
<body>
<form action="java script:logowanie();">
    <div id='login'>
        <label for='nick'>Login</label>
        <input type='text' size='20' id='nick' name='nick' value=''>
        <input type='submit' class='button' value="Zaloguj" />
    </div>
</form>
</body>
</html>


ewentualnie możesz zrobić nowy div i do niego dopisywać treści.
Kod
<html>
<head>
<script type=text/javascript src="http://code.jquery.com/jquery-1.9.0.min.js"></script>
<script type=text/javascript>
function logowanie()
{
    if($('#nick').val() == '')
    {
        $('#error').text('Nie podano loginu.');
    }
    else
    {
        $('#error').text('Podano login.');
    }
}
</script>
</head>
<body>
<form action="java script:logowanie();">
    <div id='login'>
        <div id='error'></div>
        <label for='nick'>Login</label>
        <input type='text' size='20' id='nick' name='nick' value=''>
        <input type='submit' class='button' value="Zaloguj" />
    </div>
</form>
</body>
</html>
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 31.12.2025 - 14:26