2011-01-31 5 views

답변

1

프로토 타입에서 사용되는 암시 적 방법은 POST이며 두 가지 방법으로 게시 데이터를 제출할 수 있습니다. parameters 옵션을 사용하거나 postBody 매개 변수를 사용하십시오. 두 번째 예에서는 명시 적으로 postBody 매개 변수에 쿼리 문자열을 명시하면서 첫 번째 버전 프로토 타입에서

new Ajax.Updater('id_of_html_to_be_updated', 'url', { 
    parameters: { 
    id: 1, 
    name: "string" 
    } 
}); 

// OR 

new Ajax.Updater('id_of_html_to_be_updated', 'url', { 
    postBody: 'id=1&name=string' 
}); 

는 쿼리 문자열에 parameters 옵션을 변환합니다.

+0

필자의 시나리오에서는 POST 메서드에서 값 본문과 매개 변수를 전달해야합니다. 지금 무엇을해야할까요? 어떤 아이디어라도 높이 평가합니다. – ArunRaj

+0

@ user2959196 매개 변수 (URL 매개 변수)를 의미하는지 여부는 의견에 분명하지 않습니다. 그렇다면 URL의 해당 매개 변수를 연결할 수 있습니다. – mhitza

+0

@mhiza 잘못된 방식으로 주석을 달아 주셔서 정말 죄송합니다. POST 메서드 호출에서 두 가지 다른 내용을 전달해야합니다. 내용 1 - 본문을 통해 전달합니다. 내용 2 - 매개 변수를 통해 전달합니다. 두 내용 모두 동일한 AJAX 호출에서 제공되어야합니다. 그것을하는 방법! ! ! Prototype은 body를 통해 전달할 'postBody'속성을 제공합니다. url을 통해 전달할 '매개 변수'속성 하지만 두 콘텐츠를 모두 추가하면 나에게 도움이되지 않습니다. – ArunRaj

0

당신은 parameters 옵션을 통해 그들을 제공 :

new Ajax.Updater('targetId', '/your/url', { 
    parameters: { 
     foo: "fooValue", 
     bar: "barValue" 
    } 
}); 

자세한 것은 the docs를 참조하십시오; 다양한 Ajax 옵션에 대한 doc은 here입니다. 위의 코드는 foobar에서 /your/url까지의 결과로 POST의 결과를 갖는 ID "targetId"로 요소를 업데이트합니다. 객체로 매개 변수를 제공했기 때문에 Prototype은 encodeURIComponent을 적용하여 처리합니다.

관련 문제