Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [js] wywolanie metody w klasie
Balon
post 29.07.2006, 12:41:47
Post #1





Grupa: Zarejestrowani
Postów: 422
Pomógł: 0
Dołączył: 14.12.2005
Skąd: Wałbrzych

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


Kod
/**
* This file is part of G-system.
* @copyright 2006 All rights reserved, do not copy, edit or resale.
* @author Krzysztof Jagiełło <balonyo@gmail.com>
* @version 0.1
*/

function Auth()
{
    this.url = 'ajax_request.phpaction=login&login=' + document.getElementById( 'form_login' ) + '&pass=' + document.getElementById( 'form_pass' );
    
    this.request = function()
    {
        var ajax = new Ajax.Request( 'ajax_request.php?action=login&login=' + $F( 'form_login' ) + '&pass=' + $F( 'form_pass' ), {onLoading: this.msgBox( 'SHOW', 'Loading...' ), onComplete: this.login } );
        return false;
    }
    
    this.login = function( req )
    {
        switch( req.responseText )
        {
            case 'OK':
            {
                this.msgBox( 'SHOW', 'Logged ...' ); this.pause( 1000 ); this.msgBox( 'HIDE', '' ); break
            }
            case 'ERROR':
            {
                this.msgBox( 'SHOW', 'Error ...' ); this.pause( 1000 ); this.msgBox( 'HIDE', '' ); break
            }
        }
        return false;
    }
    
    this.msgBox = function( type, msg )
    {
        document.getElementById( 'msg_m_box' ).innerHTML = msg;
        switch( type )
        {
            case 'HIDE': document.getElementById( 'msg_box' ).style.display = 'none'; break
            case 'SHOW': document.getElementById( 'msg_box' ).style.display = 'block'; break
        }
    }
    
    this.pause = function( ms )
    {
        var now = new Date();
        var exitTime = now.getTime() + ms;
    
        while( true )
        {
            now = new Date();
            if( now.getTime() > exitTime ) return;
        }
    }
}


wywoluje metode request ktora zwraca wynik do metody login, jednak jesli wywoluje w switchu metode klasy to nie jest ona wywolywana....

a jezeli zadeklaruje funkcje poza klasa i bede ja wywolywal nie jako this.msgBox a jako msgBox to wtedy dziala...

jednak zalezy mi na tym zeby byla to klasa i wszystkie funkcje byly w niej zawarte, jak rozwiazac moj problem ?

p.s. jezeli wstawie alert przed this.msgBox(...) to wyskakuje, jesli po to juz nie... a wynik sprawdzalem to jest ok, zwraca albo OK albo ERROR czyli wszystko jest ok procz wywolania msgBox w switchu


--------------------
Postura wielka i morda wredna, jestem Balon, kozak z osiedla !
bzdury.pl - Królestwo rozrywki
Go to the top of the page
+Quote Post
my_identify
post 29.07.2006, 14:11:51
Post #2





Grupa: Zarejestrowani
Postów: 24
Pomógł: 0
Dołączył: 5.02.2006

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


Cytat
wywoluje metode request ktora zwraca wynik do metody login


Jak dobrze rozumiem to
Kod
onComplete: this.login
wywołujesz metode login ale nic do niej nie przekazujesz, chyba że robisz to w innej cześci kodu. Sprawdź czy login aby na pewno ma dostęp do req.responseText (daj alerta).
Ewentualnie problem może być w this.pause.
Sprawdzałeś konsole? Wywala jakieś błędy?
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: 12.06.2025 - 13:39