2011-08-25 2 views
1

파일에 JSON 개체를 보내고 싶습니다. 내 스크립트에서 PHP 파일을 새로 열어 팝업으로 창으로 엽니 다. 그것은 POST 메서드 (jQuery에 의해 또는 그것없이)를 통해 보낼 수 있습니까?팝업을 열고 JSON 객체를 보내는 방법

그렇지 않은 경우 JSON을 URL encoded 문자열로 변환하려면 어떻게해야하나요? JavaScript 기능이 있습니까?

+0

어디에서 보내시겠습니까? 질문이 확실하지 않습니다. – Baz1nga

+0

json 개체가 준비되었습니다. 사용자가 버튼을 클릭하면 다른 도메인 (팝업)으로 보내려고합니다. –

답변

4

파라미터는 window.open() 임).

다음 양식을 보내십시오.

+1

http :// /jsfiddle.net/doktormolle/RR7RK/ –

1

JSON encoder/decoder이 작업을 수행하는 것처럼 보입니다. 이것을 호출하여 쿼리 문자열에 추가하기 전에 객체를 인코딩 할 수 있습니다.

alert(JSON.encode([0,1,false,true,null,[2,3],{"some":"value"}])); 
// [0,1,false,true,null,[2,3],{"some":"value"}] 

alert(JSON.decode('[0,1,false,true,null,[2,3],{"some":"value"}]')) 
// 0,1,false,true,,2,3,[object Object] 
당신은 (당신이 JSON으로 값을 입력) 입력과 두 번째 (팝업의 이름에 대한 목표 - 속성 (즉시) 양식을 만들 수 있습니다
3
  1. 열기 팝업 : var popup = window.open(...)
  2. 가 새 창에서 새 변수로 JSON 객체를 할당합니다 popup.json = ...
  3. 사용하여 팝업에서 변수 json (그것은 window.json으로 액세스 할 수 또는 자바 스크립트에서 불과 json합니다 팝업에서 실행중인 코드).
+0

이 변수는 PHP/POST를 통해 액세스 할 수 없습니다. –

+0

PHP에서 JavaScript 변수에 액세스 할 수 없으므로 귀하의 의견이 보이지 않습니다. 그는 그것을 액세스하여 AJAX 요청에 넣고 다른 변수와 마찬가지로 PHP 코드에 POST해야합니다. 내 예제에서는 한 브라우저 창에서 다른 브라우저 창으로 데이터를 복사하는 방법을 보여줍니다. –

+0

그 점은 그가 AJAX없이 데이터를 일반적인 방식으로 보낼 필요가있을 것입니다 (또한 그의 주석을 보았습니다, 목표는 JS를 통해 아무것도 설정할 수없는 다른 도메인 아래에있을 것입니다), 폼을 사용합니다 (다른 방법은 없습니다 POST 데이터 전송) –

1

당신은 ... 그렇게 할 수있는 Ajax API를 사용할 수있는 아약스 API에서는 데이터 속성을 지정하고 그것을 JSON을 설정하고 사용자가 설정 한 유형을 기반으로 서버에 데이터를 보낼 것입니다 수 있습니다 즉, GET 또는 POST입니다. 예를 들어

:

$.ajax(
{ 
    url: url,      // Your post URL 
    type:"POST",     // or GET 
    data: {a:1}     // In your case, your JSON object 
    success:function(response){}, // Function that will be called when your posted URL responds 
    crossDomain: true,   // If it's a cross-domain request 
    dataType: "json"    // Response datatype: JSON, text, HTML, XML, etc. 
} 
); 

한 가지주의해야 할 당신의 응답을 처리해야하는 경우, 브라우저에 의해 설정된 동일한 기원 정책 주위에 얻을 필요가있다. 같은 내용을 읽어보십시오. JSONP이라는 것을 사용할 수 있습니다. Ajax API의 일부입니다.

나는 이것이 당신이 원하는 바란다.

관련 문제