2013-08-13 2 views
1

예, 모든 URL이 동일한 URL로되어 있습니다.AJAX를 사용하는 대신 iframe에 양식을 제출하는 이유는 무엇입니까?

iframe에 양식을 제출하고 프레임 문서의 내용을 가져와 부모 페이지에서 필요한 모든 작업을 수행하면 괜찮은 금액을 절약 할 수 있습니다. (예 : 제출 후 양식에 오류 표시)

그렇다면 AJAX 대신 프레임에 제출하지 않는 이유는 무엇입니까?

편집 : https://stackoverflow.com/a/362743/870729

iframe을이 콘텐츠 삽입에 대한 의미하는 동안, 하나는 그들이 다른 이유로 자주 사용된다는 것을 기억해야합니다. 한 가지 예는 jQuery 등으로 업로드 진행 상황을 표시하는 동적 업로드 양식입니다.

내 경우 구체적으로 사용자가 양식을 제출하면 하나의 번호를 반환하고 싶습니다.

예를 들어, 사용자가 로그인 양식을 제출하고 결과가 0이면 입력 한 사용자 이름이 존재하지 않습니다. 1 그때 JS에서 같은 것을 할 것

등, 잘못된 암호 같습니다

if(response==2){ //let's just say that '2' is "no errors" 
    displayMessage("You have signed in successfully!"); 
} 

편집 :

귀하의 답변을 당신에게 모두 감사드립니다. 이 경우에는 AJAX 만 사용합니다. @cale_b에게 특별히 감사드립니다.

+0

다음 내용을 읽어보십시오. http://stackoverflow.com/a/362743/870729 –

+0

좋은 지적이지만 경우에 따라 편집 해 봅니다. –

+0

충분합니다. 아마도 iFrame을 사용하려는 이유는 무엇입니까? 아래 답변에 대한 귀하의 의견을 기반으로, 그것은 당신이 iFrame을 선호하는 것 같아? jQuery를 사용하면 아약스가 빠르고 쉽게 실행될 수 있으며 많은 유연성을 얻을 수 있습니다. 아약스를 사용하면 설명대로 한 문자/숫자를 문자 그대로 반환 할 수 있습니다. –

답변

0

정상적으로 작동하지만 정보가 귀하의 iframe에서 부모 페이지로 전달되기 어려울 수 있습니다. 어떤 이벤트를 사용 하시겠습니까? frames[0].onload = function(){}?

+0

예, 저는 onload를 사용합니다. –

0

this answerAre iframes considered 'bad practice'?에와 같이 iframe을 브라우저가로드처럼보고, 브라우저의 뒤로 버튼이 다시 이전 상태로 iframe을 탐색 할 것입니다 원인이됩니다. 이것은 당신이 원하는 것일 수도 있고 그렇지 않을 수도 있습니다.

+0

아 맞아요. 아니, 그게 내가 원하는 건 아니야. 그런 일을 막을 수있는 방법이 없으며 탐색 버튼이 위쪽 창에만 액세스 할 수 있도록 만들 수 있습니까? –

관련 문제