Pereiti prie turinio

Rekomenduojami pranešimai

Besimokydamas užtikau du skirtingai parašytus kodus, skirtus sukurti naują XMLHttpObject

<script language="javascript" type="text/javascript">
<!-- 
//Browser Support Code
function ajaxFunction(){
var ajaxRequest;  // The variable that makes Ajax possible!

try{
	// Opera 8.0+, Firefox, Safari
	ajaxRequest = new XMLHttpRequest();
} catch (e){
	// Internet Explorer Browsers
	try{
		ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
	} catch (e) {
		try{
			ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
		} catch (e){
			// Something went wrong
			alert("Your browser broke!");
			return false;
		}
	}
}
// Create a function that will receive data sent from the server
ajaxRequest.onreadystatechange = function(){
	if(ajaxRequest.readyState == 4){
		document.myForm.time.value = ajaxRequest.responseText;
	}
}
ajaxRequest.open("GET", "serverTime.php", true);
ajaxRequest.send(null); 
}

//-->
</script>

<script type="text/javascript">
function ajaxFunction()
{
var xmlhttp;
if (window.XMLHttpRequest)
 {
 // code for IE7+, Firefox, Chrome, Opera, Safari
 xmlhttp=new XMLHttpRequest();
 }
else if (window.ActiveXObject)
 {
 // code for IE6, IE5
 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
 }
else
 {
 alert("Your browser does not support XMLHTTP!");
 }
xmlhttp.onreadystatechange=function()
{
if(xmlhttp.readyState==4)
 {
 document.myForm.time.value=xmlhttp.responseText;
 }
}
xmlhttp.open("GET","time.asp",true);
xmlhttp.send(null);
}
</script>

Kaip matot, pirmame naudojama try catch, o antrame if else, tai mano klausimas būtų kurį geriau čia naudot?

Beje, abu kodai ne taip veikia, kaip turėtų veikti IE8 (visur kitur gerai), atidarius naršyklę ir įrašius ką nors atsiranda laikas, o toliau nereguoja, ar tai refreshinus naršyklę ar ne.

Redagavo Vytautas_
Nuoroda į pranešimą
Dalintis kituose puslapiuose

aaam try, catch, if yra visai skirtingi dalykai.

 

try {

//kodas kuris vykdomas visada

}

catch {

//kodas, kuris vykdomas, jei kode tarp try {} įvyko klaida (pvz nerasta kokia funkcija ar mistype ar dar kas)

}

 

o if (statement) {

// Kodas, kuris vykdomas jei statement == true

}

else {

// Kodas, kuris vykdomas jei statement == false

}

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Dėkui, Dummas ir Sauliau, kadangi dar mokaus, tai man to kol kas ir užtenka :D

Vienas klausimėlis dar, turiu du kodus, nors atrodo identiški, tačiau vienas veikia, kitas ne:

NEVEIKIA

ajax.onreadystatechange = ajaxReceive();

// Create a function that will receive data sent from the server
function ajaxReceive() {
	if(ajax.readyState == 4){
		document.getElementById('id').innerHTML = ajax.responseText;
	}
}

VEIKIA.

ajax.onreadystatechange = function(){
	if(ajax.readyState == 4){
		document.getElementById('id').innerHTML = ajax.responseText;
	}
}

Tai ar čia taip negalima daryt, ar mano kur klaida?

Redagavo Vytautas_
Nuoroda į pranešimą
Dalintis kituose puslapiuose
Dėkui, Dummas ir Sauliau, kadangi dar mokaus, tai man to kol kas ir užtenka :D

Vienas klausimėlis dar, turiu du kodus, nors atrodo identiški, tačiau vienas veikia, kitas ne:

NEVEIKIA

ajax.onreadystatechange = ajaxReceive();

// Create a function that will receive data sent from the server
function ajaxReceive() {
	if(ajax.readyState == 4){
		document.getElementById('id').innerHTML = ajax.responseText;
	}
}

VEIKIA.

ajax.onreadystatechange = function(){
	if(ajax.readyState == 4){
		document.getElementById('id').innerHTML = ajax.responseText;
	}
}

Tai ar čia taip negalima daryt, ar mano kur klaida?

pabandyk funkciją parašyti prieš ajax.onreadystatechange. o tiksliausiai parodys error console.

Nuoroda į pranešimą
Dalintis kituose puslapiuose
Kas per error console? :)

 

Įsidiek FireBug. Jis parodys JavaScript klaidas savo konsolėj.

 

Nebandžiau, bet spėju, kad neveikia, nes kai darai funkcijoj

 

ajax.readyState

 

"ajax" yra nebedefinintas (nes dabar esi kitam kintamųjų scope). Gali pabandyt pakeisti į

 

this.readyState

 

bet nieko nepažadu . :)

Redagavo Saulius
Nuoroda į pranešimą
Dalintis kituose puslapiuose
  • po 2 savaičių...
  • Administratoriai
Kaip padaryt linką su paveikslėliu, tačiau be jokio borderio? Nes kai padariau

aplink tą pav. yra gal 2-3px borderis. Kaip jį pašalint?

:D

 

<div><a><img /></a></div>

 

O css kiek pataisysiu į paprastesnį:

a img{
border: 0px none White;
}

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Prisijunkite prie diskusijos

Jūs galite rašyti dabar, o registruotis vėliau. Jeigu turite paskyrą, prisijunkite dabar, kad rašytumėte iš savo paskyros.

Svečias
Parašykite atsakymą...

×   Įdėta kaip raiškusis tekstas.   Atkurti formatavimą

  Only 75 emoji are allowed.

×   Nuorodos turinys įdėtas automatiškai.   Rodyti kaip įprastą nuorodą

×   Jūsų anksčiau įrašytas turinys buvo atkurtas.   Išvalyti redaktorių

×   You cannot paste images directly. Upload or insert images from URL.

Įkraunama...
  • Dabar naršo   0 narių

    Nei vienas registruotas narys šiuo metu nežiūri šio puslapio.

  • Prisijunk prie bendruomenės dabar!

    Uždarbis.lt nariai domisi verslo, IT ir asmeninio tobulėjimo temomis, kartu sprendžia problemas, dalinasi žiniomis ir idėjomis, sutinka būsimus verslo partnerius ir dalyvauja gyvuose susitikimuose.

    Užsiregistruok dabar ir galėsi:

    ✔️ Dalyvauti diskusijose;

    ✔️ Kurti naujas temas;

    ✔️ Rašyti atsakymus;

    ✔️ Vertinti kitų žmonių pranešimus;

    ✔️ Susisiekti su bet kuriuo nariu asmeniškai;

    ✔️ Naudotis tamsia dizaino versija;

    ir dar daugiau.

    Registracija trunka ~30 sek. ir yra visiškai nemokama.

  • Naujausios temos

  • Karštos temos

×
×
  • Pasirinkite naujai kuriamo turinio tipą...