2011-09-10 3 views
12

나는 첫 번째 바이올린을 만들려고합니다. 그래서 여기 내가 jQuery로 수행 할 작업입니다jsFiddle에서 ajax 요청을 사용하는 방법

$('.list').live('click', function(){ 
    var dataPass = 'uid='+ uid; 
    $.ajax({ 
     type: "POST", 
     url: "test.php", 
     data: dataPass, 
     cache: false, 
     success: function(html){ 
      //Do something 
     } 
    }); 
}); 

그래서 어디 test.php 파일의 코드를 쓰기 어떻게 /? 그것은 일부 HTML 마크 업을 반환 할 것입니다.

답변

10

아주 기본적인 보안 위험 때문에 AJAX 요청을 현재 도메인이 아닌 다른 도메인으로 만들 수 없습니다.

jsFiddle에는 대신 사용해야하는 AJAX 요청 테스트 용 API이 있습니다.

4

아마도 당신이 찾고있는 것의 작동하는 fiddle입니다.

http://echo.jsontest.com을 사용했지만 유효한 URL을 대신 사용할 수 있습니다.

var echo = function(dataPass) { 
    $.ajax({ 
     type: "POST", 
     url: "/echo/json/", 
     data: dataPass, 
     cache: false, 
     success: function(json){ 
      alert("UID=" + json.uid + "\nName=" + json.value); 
     } 
    }); 
}; 

$('.list').live('click', function(){ 
    $.get("http://echo.jsontest.com/uid/12345/value/nuno_bettencourt", function(data) { 
     var json = { 
      json: JSON.stringify(data), 
      delay: 1 
     }; 
     echo(json);; 
    });​ 
}); 
+0

어떻게 작동합니까? 동일한 출처 정책에 의해 $ .get() 호출이 허용되지 않아야합니까?/confused – rych

+0

원격 서버는이 HTTP 헤더를 추가하여 크로스 도메인 요청'Access-Control-Allow-Origin : *'이 허용되도록 브라우저에 알립니다. 브라우저의 디버그 도구의 네트워크 탭에있는 헤더를 참조하십시오. – oldwizard

+0

http://echo.json.services/?foo=bar&baz=qux – Falci

관련 문제