2014-04-18 4 views
2

테스트를 위해 간단한 AJAX 호출을 만들려고하는데 문제가 발생했습니다. 내 AJAX 호출에 중첩 된 성공 함수를 경고 메시지를 팝업해야하지만 그것은 않습니다. 방화 광명을 확인하면 POST가 성공적으로 끝나고 "A20"(인용 부호 제외)으로 응답합니다. 내 코드에 문제가 있습니까?AJAX 성공 함수가 실행되지 않습니다.

의 index.php (뷰)

<!DOCTYPE html> 
<html> 
<head> 
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script> 
<script src="init.js"></script> 
<script src="jquery-1.10.2.min.js"></script> 
</head> 
<body> 

<button id="your_button">Push me</button> 

</body> 
</html> 

init.js로

$(function() { 
$('#your_button').bind("click", function() { 

var json_data = {"category": "A", "size": "20"}; 

$.ajax({ 
    url: "posted.php", 
    dataType: "json", 
    type: "POST", 
    cache: false, 
    data: {"data": json_data}, 
    success: function (data) { 
     if (!data.error) { 
      alert('k'); 
     } else { 
      alert('error!'); 
     } 
    } 
}); 
}); 
}); 

posted.php는

$category = $_POST['data']['category']; 
$tsize = $_POST['data']['size']; 
echo ($category); 
echo ($size); 
+0

반환 할 때 HTTP 200 코드가 있으면 성공으로 돌아올 것입니다. 네트워크 탭에서 실제로 어떤 코드가 반환되는지 확인해야합니다. – MackieeE

+0

또한, 두 버전의 jquery를로드하고 있습니까? – MackieeE

+0

예, 작동하지 않습니다. 삭제했지만 편집하는 것을 잊었습니다. – user3541436

답변

1

이 시도 그들의.

두 번째로 data: {"data": json_data},data: json_data,으로 바꿉니다.

third on posted.php $category = $_POST['category']$tsize = $_POST['size'];을 사용하십시오.

희망이 있으면 도움이 될 것입니다.

1

이 옳지 않다 :

data: {"data": json_data} 

다음과 같이 수행하십시오 당신은 당신의 PHP에 적절한 헤더를 설정하고 PHP 파일에서 유효한 JSON 응답을 보낼 필요가

data: {data: json_data} 
1

. 당신의 PHP

header('Access-Control-Allow-Origin: *'); 
    header('Content-type: application/json'); 

에이 라인을 추가하고 에코처럼에서 '{ "인증": "true"로, "오류": "false"로}'일부 유효한 JSON을 반향; 하나를 제거

$(function() { 
$('#your_button').bind("click", function() { 

var json_data = {"category": "A", "size": "20"}; 

$.ajax({ 
    url: "posted.php", 
    dataType: "json", 
    type: "POST", 
    cache: false, 
    data: json_data, 
    success: function (data) { 
     if (!data.error) { 
      alert('k'); 
     } else { 
      alert('error!'); 
     } 
    } 
}); 
}); 
}); 

Posted.php

$category = $_POST['category']; 
$tsize = $_POST['size']; 
//echo ($category); 
//echo ($tsize); 
echo json_encode($_POST); 

귀하 찾는 JSON 데이터를하지만 당신은 당신이 JQuery와 라이브러리를 사용하여 JSON 데이터

1

먼저 반향되지 않았다 -

관련 문제