2016-04-07 23 views
-1
<!DOCTYPE html> 
<html> 
<body> 
<p id="demo"></p> 
<script 
<script> 

function kick_start(){ 
var xml=new XMLHttpRequest(); 
var url="student.json"; 

xml.open("GET", url, true); 
xml.send(); 


xml.onreadystatechange=function(){ 
if(xml.readyState == 4 && xml.status==200){ 
var file=JSON.parse(xml.responseText); 
var data=document.getElementById("demo"); 
data.innerHTML=file.Name; 
} 
} 
data.innerHTML="Fetching Data.........."; 
} 



</script> 
<script>kick_start()</script> 
</body> 
</html> 

yanıt vermiyor Ve JSON dosyasıdır:Bu Ajax istek karşılık gelen JSON dosyasına

{"Name":"Arman","ID":1312038;"Department":"NAME"} 

Ben Ajax isteği üzerinden JSON dosyasına veri getirmek için bu HTML dosyasını çalıştırmak için çok çalıştı. Ama bir sorun var. Her iki dosyayı da aynı dizinde saklıyorum. Ne yapabilirim?

+2

Konsolda veya "ağ sekmesinde" herhangi bir hata var mı? – Rayon

+1

Tarayıcı konsolunda herhangi bir hata görüyor musunuz? – Vishwanath

cevap

2

data.innerHTML "Veri Alması" ayarını yaptığınızda, data bu noktada öğe değildir, çünkü yalnızca ajax tamamlandığında öğe olur. Bu konsolda bir hatayı tetikleyecektir - bir göz atmak için F12 tuşuna basın.

Bunu çözmek için var data = ... satırını readystatechange işlevinin dışına taşıyın.

Başka bir sorun, JSON'unuzun geçerli olmaması, virgül olması gereken ; var. JSONLint'da doğrulayabilirsiniz.

İlgili konular