2010-05-28 4 views
0

함수는 페이지 로딩에 아약스입니다하지만 난 기능을로드 된 아약스에서 js 함수를 사용하는 방법?

코드를 호출하기 위해 노력하고있어 :

[아약스]

$.ajax({ 
type: "POST", 
url: "loginpersonal.asp", 
data: "id=<%=request("id")%>", 
beforeSend: function() { 
    $("#personaltab").hide(); 
}, 
success: function(msg){ 
    $("#personaltab").empty().append(msg); 
}, 
complete: function() { 
    $("#personaltab").slideDown(); 
}, 
error: function() { 
    $("#personaltab").append("error").slideDown(); 
} 
}); 

[JS 기능]

function GetCount(t){ 
    if(t>0) { 
     total = t 
    } 
    else { 
     total -=1; 
    } 
    amount=total; 
              if(amount < 0){ 
     startpersonalbid(); 
    } 
    else{ 
     days=0;hours=0;mins=0;secs=0;out=""; 
     days=Math.floor(amount/86400);//days 
     amount=amount%86400; 
     hours=Math.floor(amount/3600);//hours 
     amount=amount%3600; 
     mins=Math.floor(amount/60);//minutes 
     amount=amount%60; 

     secs=Math.floor(amount);//seconds 
     if(days != 0){out += days +":";} 
     if(days != 0 || hours != 0){out += hours +":";} 
     if(days != 0 || hours != 0 || mins != 0){out += ((mins>=10)?mins:"0"+mins) +":";} 
     out += ((secs>=10)?secs:"0"+secs) ; 
     document.getElementById('countbox').innerHTML=out; 
     setTimeout("GetCount()", 1000); 
    } 
} 
window.onload=function(){ 
GetCount(<%= DateDiff("s", Now,privatesellstartdate&" "&privatesellstarttime) %>); 

loginpersonal.asp의 끝 부분에서 아약스에서 ... 어떻게할까요? GetCount() 함수를 다시 호출하려고합니다.

+1

스크립트를 어떻게로드합니까? '

0

은 당신이 사용하고있는 라이브러리 모르겠지만, 내가 좋아하는 HTML을 사용하여 다음

<div> 
    My markup 
</div> 

<script type="text/javascript"> 

(function ($) { 
    window.myFunction = function() { 
     alert("Running from ajax loaded file"); 
    } 
})(jQuery); 

</script> 

그리고 jQuery로, 나는 다음과 같이 호출 : 물론

$("div#loadMe").load("/snippets/file.html", function(response, status, xhr){ 
    if (status == "error") { 
    alert ("Error"); 
    return; 
    } 
    // do stuff 
    window.myFunction(); 
}); 

을 , 당신은 당신이 아약스 로딩을하고 싶은 라이브러리를 사용할 수 있습니다. 위의 코드는 테스트하지 않았지만 현재 프로덕션 환경에있는 코드와 유사합니다.

jquery를 사용하면 ENTIRE 파일을로드해야합니다. 그렇지 않으면 스크립트가 실행되지 않습니다. 파일 내의 특정 요소 만 대상으로 지정하면 스크립트가로드되거나 실행되지 않습니다. 즉,이 작업을 수행 할 수 없습니다 : load("/snippets/file.html #container") 스크립트를 실행하십시오.

또한 jsonp를 사용하여로드하지 않는 한이 사이트가 작동해야합니다.

관련 문제