2013-02-27 4 views
0

여기 내 코드입니다 : lecturer_login.php에서아약스 호출은 게시

<div id="test"></div> 

<form id="form-lecturer-login"> 

    <table> 
     <tbody> 
     <tr> 
      <td> 
       <label class="label">Username : </label><br> 
       <input name="username" value="" type="text"> 
      </td> 
     </tr> 
     <tr> 
      <td> 
       <label class="label">Password : </label><br> 
       <input name="password" value="" type="text"> 
      </td> 
     </tr> 
    </tbody> 
    </table> 
    <input value="Log In" type="submit"> 
</form> 

<script type="text/javascript"> 
$('#form-lecturer-login').submit(function(){ 
    $.post("../php/lecturer_login.php",$(this).serialize(), 
    function(data){ 
    $('#test').html(data[0]).show(); 
    }, "json"); 
}); 
</script> 

:

<?php 
$stack = array(); 
array_push($stack,"test"); 
echo json_encode($stack);  
?> 

참고 : 나는 내가 사용하지 않는 데이터를 전달하고 이해합니다. 시험 목적으로 만 사용하십시오.

'test'div는 텍스트를 'test'로 변경하지 않습니다.

저는 예제를 통해 이것을 배우고 jquery 문서를 따라했습니다. 내가 뭘 놓치고 있니? 내가 필요로하는 문서 헤드

<script type="text/javascript" src="../js/jquery-1.4.2.min.js" ></script> 

: 은 이외의 포함되어 있습니까?

+3

양식의 자연어 제출을 방해하지 않으므로 결과를 볼 수 없습니다. –

+0

Google 크롬 개발자 콘솔 및/또는 Firebug를 사용하여 AJAX 호출의 응답을 가져 와서 여기에 게시하십시오. - 또한 AJAX 스크립트는'lecturer_login.php'를 치지 만 코드 스 니펫에서'lecturer.php'를 참조하므로 일치하는지 확인하십시오. –

+0

lecturer_login.php의 출력이 null입니다. – Kam

답변

0

나는

<?php 
$stack = array(); 
$stack['info']='test'; 
echo json_encode($stack);  
?> 

그런 짓을 그리고 $ .post 나는 당신이

event.preventDefault(); 
0

나는 문제가 생각해야 할 깜빡 $ 아약스

 $.ajax({ 
       url:'../php/lecturer_login.php', 
       type:'POST', 
       dataType:'json', 
       success:function (result) { 
        $('#test').html(result.info);//since info is the key of the json maybe the same for $.post 
       } 
     }); 

선호의 insted 것 당신이 포스트 백을 막지 못한다고. 이 일을

시도 :

<script type="text/javascript"> 
$('#form-lecturer-login').submit(function(event){ 
    event.preventDefault(); 
    ... 

이 함수에 매개 변수를 추가하고 preventDefault() 메서드를 호출합니다.