2009-12-17 3 views
1

여기 내 함수의 :jQuery를 아약스 작동하지 않습니다

$(".home .up_0").click(function() { 
    $.post("includes/vote.php", 
     {truc : $(this).attr("id")}, 
     function(data) { 
      if(data==1) { 
       $(this).parents('.home').find('.score_neutre').append(
        $(this).parents('.home').find('.score_neutre').val()+1 
       ); 
      } else { 
       alert("Error !"); 
      } 
     }, 
     "json" 
    ); 
}); 

내가 모든 작업을 클릭 만 (1 인 내가 그것을 2로 변경하려는)을 .score_neutre 값을 변경하지 않는 경우.

+2

당신은 json 응답을 검색하고이를 문자열로 사용하고 있습니다. – yoda

+0

Btw json은 {score : 12} 또는 {values ​​: {score : 12}}와 같습니다 ( data.score 또는 data.values.score를 각각 참조). json을 연관 배열로 PHP에서 모든 것을 캡슐화하고 json_encode ($ array)를 사용하려면 json을 사용하지 마십시오. – MindStalker

답변

3

당신은 데이터

는 JSON 데이터를 당신이 보낸 연관 배열 이름 상태 "점수"하지 (data.score == 1)을 테스트해야합니다.

+0

나는 그것을 얻지 못한다. php 파일에서 나는 그것이 작동한다면 1을 되돌리고, doesnt한다면 0을 돌려 보낸다. 그리고 그것은 작동합니다 : | –

2

무엇 당신의 JSON 응답이 생겼는데? 당신은 이것을 숫자와 비교할 수 없습니다.

또한 가장 가능성이있는 append을 사용하고 있습니다. 당신이 정말로하고 싶었던 것 같아요.

var ele = $(this).parents('.home').find('.score_neutre'); 
ele.val(ele.val()+1); 
+0

글쎄, 추가 또는이 나던 일. 나는 그것이 그것이 작동하지 않는 함수 (데이터) 내부에 있기 때문에 그것이라고 생각한다. –

관련 문제