2012-11-29 2 views
1

패스 및 아약스 통해 데이터를 가져 오는 다음 코드를 사용하고 있습니다. 전 제품에 데이터를 전달하는 passdata 기능을 사용하고아약스 응답이 느려지고

function passdata(id) 
{ 


    var top = document.getElementById("tname").value; 
    var first = document.getElementById("fname").value; 

    var font_top = document.getElementById("font_top").value; 
    var font_first = document.getElementById("font_first").value; 

    var image_top = document.getElementById("image_top").value; 
    var image_first = document.getElementById("image_first").value; 


var poststr = "id=" + id + 
"&top=" + top + 
"&first=" + first + 
"&font_top=" + font_top + 
"&font_first=" + font_first + 
"&image_top=" + image_top + 
"&image_first=" + image_first + 
"&actype=getevent"; 

var reqAddCart = new Subsys_JsHttpRequest_Js(); 

reqAddCart.onreadystatechange = function() { 
if (reqAddCart.readyState == 4) { 
if (reqAddCart.responseJS) { 
document.location.href = reqAddCart.responseJS.ajax_redirect; 
return; 
} 
else { 
//alert(reqAddCart.responseText); 
//showModal('abc'); 

document.getElementById('data_content').innerHTML = reqAddCart.responseText; 


result = (reqAddCart.responseText||''); 

var brokenresult=result.split("@"); 

} 
} 
} 
var senddata = new Object(); 

var url = 'product.php?'+poststr; 
//alert(url); 

reqAddCart.caching = false; 
reqAddCart.open('GET', url, true); 
reqAddCart.send(senddata); 

return false; 
} 

기능의 작동을 page.this하지만 난 반응이 매우 느리게 얻고있다.

+0

관련 코드 만 게시하십시오. 그리고 문제는 서버에서 발생할 가능성이 큽니다 (스크립트의 응답 시간이 느립니다). –

+0

아무도 그 물결표를 읽지 않을 것이라고 생각합니다. 관련 부분에 조금 잘라주십시오. 그리고 느린 서버 응답이 아님을 확인 했습니까? – lawl0r

+0

예 가능할 수 있습니다. 개발 서버에서 완벽하게 작동하지만 라이브에서 매우 느린 응답을 얻고 있습니다. 서버에서이 작업을 다시 수행 할 수 있습니까? –

답변

0

AJAX 요청이 완료되는 데 걸리는 시간은 서버 및 클라이언트 모두의 네트워크 대기 시간 및 연결 속도는 물론 서버의 스크립트 실행 시간에도 영향을받습니다.

인터넷을 통해 데이터를 전송할 필요가 없어 지므로 AJAX 요청이 로컬 테스트보다 훨씬 빨라질 것으로 예상됩니다.

관련 문제