Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Može li netko pojasniti ovaj kod

[es] :: Javascript i AJAX :: Može li netko pojasniti ovaj kod

[ Pregleda: 2531 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

dedek
Richard Monz
Austrija

Član broj: 47163
Poruke: 13
*.adsl.net.t-com.hr.



Profil

icon Može li netko pojasniti ovaj kod01.02.2010. u 19:08 - pre 173 meseci
Pozdrav

zapeo sam na ovom kodu i nemogu tocno da shvatim zasto se koristi trim(response)
i kako tocno radi xmlhttp iznad

hvala na odgovorima
Code:

var xmlhttp

function doInfoRequest(method, manu, model)
{
xmlhttp=GetXmlHttpObject();
if (xmlhttp==null)
  {
  alert ("Your browser does not support XMLHTTP!");
  return;
  }
var url="getRequestInformation.php";
url=url+"?method="+ method;
url=url+"&manu="+ manu;
url=url+"&model="+ model;
xmlhttp.onreadystatechange=stateChanged;
xmlhttp.open("GET",url,true);
xmlhttp.send(null);

}

function stateChanged()
{
if (xmlhttp.readyState==4)
  {
    //alert(xmlhttp.responseText);      
    var response = (xmlhttp.responseText).split("|&|");    
    if(trim(response[0]) == 'modelInfo'){
        document.userRequest.model.disabled = false;
        document.userRequest.imei.disabled = true;
        document.userRequest.rim.disabled = true;
        document.getElementById('modelBody').innerHTML = response[1];
        document.getElementById('price').innerHTML = "";
        document.userRequest.comment.disabled = true;
        if(trim(response[1]) == ''){
            document.userRequest.model.disabled = true;
            document.userRequest.imei.disabled = true;
            document.userRequest.rim.disabled = true;
            document.getElementById('price').innerHTML = "";        
        }
    }
    if(trim(response[0]) == 'reqInfo'){
        //alert('1' + response[1]);
        if(trim(response[1]) == '10'){
            document.userRequest.imei.disabled = false;
            document.userRequest.comment.disabled = false;
            document.getElementById('price').innerHTML = response[2];
        }else if(trim(response[1]) == '11'){
            document.userRequest.imei.disabled = false;
            document.userRequest.comment.disabled = false;
            document.userRequest.rim.disabled = false;
            document.getElementById('price').innerHTML = response[2];
        }else if(trim(response[1]) == '01'){            
            document.userRequest.rim.disabled = false;
            document.userRequest.comment.disabled = false;
            document.getElementById('price').innerHTML = response[2];        
        }else{
            document.userRequest.imei.disabled = true;
            document.userRequest.comment.disabled = true;
            document.userRequest.rim.disabled = true;
            document.getElementById('price').innerHTML = "";
        }
    }

    
    //document.getElementById("txtHint").innerHTML=;
  }
}

 
Odgovor na temu

kazil
Robert Bašić
Full time PHP dev :)
Bačka Topola - Novi Sad

Član broj: 120044
Poruke: 686
*.mbb.telenor.rs.

Jabber: robertbasic@elitesecurity.org
ICQ: 446475288
Sajt: robertbasic.com


+2 Profil

icon Re: Može li netko pojasniti ovaj kod01.02.2010. u 19:32 - pre 173 meseci
Ovo je za JS forum.

trim funkcija "skida" sa pocetka i kraja stringa sve whitespace-ove. JS nema ugradjenu trim funkciju, tako da je to neka custom napisana f.ja.

xmlhttp je vezan za pravljenje ajax request-ova: http://www.google.com/search?q=xmlhttprequest
 
Odgovor na temu

dedek
Richard Monz
Austrija

Član broj: 47163
Poruke: 13
*.adsl.net.t-com.hr.



Profil

icon Re: Može li netko pojasniti ovaj kod01.02.2010. u 20:51 - pre 173 meseci
Hvala na odgovoru,,za trim funkciju sam znao,,to nije strano,,medjutim čemu svi ovi response[0] response== pa response ovo i ono!!???
nikako da odgonetnem šta je sa tim htio dobiti,,i dali je to uopce vazno ispod ovog Ajaxa!!???
 
Odgovor na temu

Aleksandar Ružičić
Software Architect, Appricot d.o.o.
Beograd

Član broj: 26939
Poruke: 2881

Jabber: krckoorascic@gmail.com
Sajt: krcko.net


+44 Profil

icon Re: Može li netko pojasniti ovaj kod02.02.2010. u 17:57 - pre 173 meseci
Citat:
dedek: ...medjutim čemu svi ovi response[0] response== pa response ovo i ono!!???
nikako da odgonetnem šta je sa tim htio dobiti...


ako pogledas malo pazljivije stateChanged funkciju videces ovu liniju:
Code (javascript):

var response = (xmlhttp.responseText).split("|&|");
 


split() funkcija u javascriptu deli string po datom separatoru (u tvom slucaju |&|) i vraca niz ciji su elementi delovi pocetnog stringa koji su se nalazili izmedju separatora.

npr ako ti je xhmlhttp.responseText (sto je btw response koji ti je server vratio) jednako abc|&|foo|&|123 456, nakon pozivanja split fje, response niz ce ti biti jednak:
Code (javascript):

response[0] = "abc";
response[1] = "foo";
response[2] = "123 456";
 

 
Odgovor na temu

dedek
Richard Monz
Austrija

Član broj: 47163
Poruke: 13
*.adsl.net.t-com.hr.



Profil

icon Re: Može li netko pojasniti ovaj kod04.02.2010. u 21:11 - pre 172 meseci
Hvala kolega,,
baš si mi skrenuo pažnju u pravom smjeru,,sad mi je puno jasnije šta se treba događati upotrebom split funkcije

nadam se da sam se pomaknuo bar za 10 % u toj mojoj zamršenoj skripti,,

Pozdrav i hvala još jednom
 
Odgovor na temu

[es] :: Javascript i AJAX :: Može li netko pojasniti ovaj kod

[ Pregleda: 2531 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.