2012-08-13 3 views
0

에서 자바 스크립트 코드를 작성내 index.php를 PHP

내 calendar_view.php
switch ($action){ 

     case "calendar": 

     echo "<script language=\"javascript\">\n"; 

     echo "document.write('Hello World!')"; 

     echo "</script>"; 

     include($_STR_TEMPLATEPATH."/calendar_view.php"); 

     break; 

    } 

: 나는 index에서 actioncalendar를 호출하고 calendar divcalendar_view.php에 결과를 표시한다 아약스 기능이

<script> 
    function calendarList() 
    { 
    var xmlHttp; 
    try 
     { 
     // Firefox, Opera 8.0+, Safari 
     xmlHttp=new XMLHttpRequest(); 
     } 
    catch (e) 
     { 
     // Internet Explorer 
     try 
     { 
     xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); 
     } 
     catch (e) 
     { 
     try 
      { 
      xmlHttp=new ActiveXObject("Microsoft.XMLHTTP"); 
      } 
     catch (e) 
      { 
      alert("Your browser does not support AJAX!"); 
      return false; 
      } 
     } 
     } 
    xmlHttp.onreadystatechange=function() 
    { 
    if (xmlHttp.readyState==4 && xmlHttp.status==200) 
     { 
     document.getElementById("calendar").innerHTML=xmlHttp.responseText; 
     } 
    } 

     xmlHttp.open("GET","?action=calendar",true); 

     xmlHttp.send(null); 

    } 
    </scritp> 

캘린더 사업부 :

<div id="calendar"></div> 

calendarList function을 호출 할 때 사례를 호출했지만 calendar div에 결과를 표시하지 않았습니다.

도움이됩니다. 감사합니다

+0

잘못하고 있습니다. http://stackoverflow.com/questions/11658596/is-echoing-javascript-code-condtionally-based-on-server-side-logic-considered-ha/11658717 –

답변

1

을 볼 생각하지 않습니다. 설명대로 모든 것이 작동하면 DOM에 응답이 추가되지만 JavaScript 경고는 실행되지 않습니다.

alert(xmlHttp.responseText);을 시도해 응답 내용이 올바른지 확인하십시오. 그렇다면 거기에서 갈 수 있습니다.

+0

알림 (xmlHttp.responseText)을 추가했습니다. 스크립트로 보내지 만 아무 것도 나오지 않는다. – alkhader

+0

FireFox에서 Firebug로 inspect 요소를 열고 Response에서 "GET"요청을 열면 스크립트가 인쇄된다. – alkhader

+1

@alkhader : 그러면 사용할 때 응답해야한다 'alert (xmlHttp.responseText);'. – Amberlamps

1

대신 너를 그냥 출력 텍스트를 텍스트 작성하는 스크립트를 사용하는

switch ($action){ 
    case "calendar": 
    echo "Hello World!"; 
    include($_STR_TEMPLATEPATH."/calendar_view.php"); 
    break; 
} 

나는 innerHTML을 작품에 삽입 한 스크립트가 표시 할 정도가 아니다 Can scripts be inserted with innerHTML?

+0

감사합니다. 텍스트 예제만으로 내 쉽게 게시 할 수 있습니다. 사실 복잡한 스크립트를 작성해야합니다. – alkhader

관련 문제