2009-12-08 10 views
-1

이 코드를보십시오 :자바 스크립트 콜백 캐시가 존재합니까?

<script type="text/javascript"> 

$("#<?=$delete_uid?>").click(function() { 
    var id = $("#<?=$grid_uid?>").jqGrid('getGridParam','selrow'); 
    alert(id); 
    if(id == null) { 
     $.jGrowl("No selected Item"); 
     return; 
    } 

    confirm('Caution','Delete current selected item?', function(result) { 
     if(result==true) { 
      alert(id); 
      url = "<?=ADMIN_URL?>/account/delete/id/" + id; 
      execURL(url, function(result) { 
       if (result==true) { 
        $.jGrowl("Item removed!!"); 
        $("#<?=$grid_uid?>").trigger("reloadGrid"); 
       } else 
        $.jGrowl("Remove failure!!"); 
      }); 
     } 
    }); 
}); 
</script> 

obs : 경고는 디버깅 목적으로 만 사용됩니다.

첫 번째 패스에서 id는 jqgrid에서 가져온다. 모든 것은 괜찮지 만, 두 번째에는 확인 함수 콜백에서만 첫 번째 값을 유지한다.

도와주세요, 이것에 3 시간을 잃어 버렸습니다!

+0

매우 명확하지 않습니다 ... 설명해 주시겠습니까? '경고 '는 무엇을 보여줍니까? 너는 무엇을 기대 하느냐? – Kobi

+0

allert 디버그 목적의 경우에만 현재 jqgrid의 현재 선택된 행 ID를 표시합니다. 이 회전식 경보의 두 번째 호출에서 올바른 두 가지가 있지만 마지막 id를 선택한 url 변수 id mantain의 마운트! – JoeLoco

+0

이 문항에는 많은 문법과 철자법 오류가있어 이해하기가 매우 어렵습니다. 맞춤법 검사기를 사용하거나 친구에게 질문을 작성하도록 요청하십시오. – kgiannakakis

답변

1

'확인'기능에 대해 다른 구문을 사용해보십시오. 함수를 전달하지 말고 반환 값을 결과로 사용하십시오.

if(confirm('Caution','Delete current selected item?')){ 
      alert(id); 
      url = "<?=ADMIN_URL?>/account/delete/id/" + id; 
      execURL(url, function(result) { 
       if (result==true) { 
        $.jGrowl("Item removed!!"); 
        $("#<?=$grid_uid?>").trigger("reloadGrid"); 
       } else 
        $.jGrowl("Remove failure!!"); 
      }); 
}; 

이 정보가 도움이됩니다.

관련 문제