2011-09-05 5 views
4

에서 열립니다 :양식, 내가 양식 코드부터 다음 HTML을 사용하고 새 탭

<form id="uploadpic" method="post" target="uppic" name="upform" action="/cgi-bin/inpost.cgi" enctype="multipart/form-data"> 

가 페이지를 시도하고로드 할 수 있지만 페이지가 새 탭에서 열립니다.

나는 이것이 문제의 일부라고 생각하지 않지만, 어쨌든 이것을 포함 할 것입니다.

<iframe id="uppic" name="uppic"></iframe> 

가 왜이 제출되지 않습니다 : 이것은 형태의 버튼 코드를 제출한다 :

<input name="filename" id="filename" type="file" onchange="submitFormAfterImageCheck();" /> 

그리고 이것은 호출하는 기능입니다 :

function submitFormAfterImageCheck() 
      { 
       if(/(\.jpeg|\.jpg|\.JPG|\.gif|\.png|\.tiff)$/.test(document.getElementById("filename").value)) 
       { 
        nogo = "go"; 
        document.getElementById("uploadpic").submit(); 
        $("#upload").html("<center>LOADING...</center>"); 
        $('#link').hide(); 
        $('#update_post').hide(); 

       } 
       else 
       { 
        alert("You can only upload an image."); 
       } 
      } 

iframe이 코드 iframe?

+2

바로 내 보인다. – jimbojw

+0

로드중인 페이지가 실제로 iframe에로드되고 있지만 새 페이지가 새 탭에 표시되는 자체 창을 여는 중입니까? –

+0

@ 로버트 마틴 ... 아니, 그렇게 생각하지 않아 .. –

답변

-1

DIV 요소의 배치가 문제인 것으로 보입니다. 양식 태그 내에 배치되었지만 제출 된 양식은 결코 리디렉션되지 않았습니다. 양식 태그에서 제거되면 잘 리디렉션됩니다.

+3

자세한 내용을 설명해 주시겠습니까? 원래의 질문에 DIV 요소에 대한 언급이 없습니다. 그들이 어디에서 왔습니까? –

5

나는 또한 동일한 문제에 직면하여 해결 방법을 찾았습니다.

서식의 target 특성을 정적으로 설정하면 대상이 iframe 인 경우에도 새 탭/창에서 응답을받습니다.

target 속성을 form으로 설정하여이를 재정의 할 수 있습니다.이 속성은 javascript/jQuery를 사용하여 동적으로 form입니다.

자바 스크립트 :

document.getElementById(formId).target = iframeId; 

jQuery를 :이 도움이

$("#formId").attr('target', iframeId); 

희망.

+0

정답입니다! 위대한 직업, 매우 도움이! – RonSper

2

다음이 해결해야한다 (@johndoe는 그의 대답에 언급 한 바와 같이) 당신이 당신의 DOM 요소에 문제가되지 않고 자바 스크립트를 사용하여 대상을 설정할 때 (@naren는 그의 대답에 언급 한 바와 같이) 여전히 문제가하는 경우 문제 :

이있는 iFrame에 이름 속성을 지정하고 그 값으로 양식 목표를 설정 :

<iframe name="myTarget"></iframe> 

<form target="myTarget" method="post" ...></form> 
+0

나는 이것이 늦은 대답이라는 것을 안다. 그러나 이것은이 문제에 대한 최고의 Google 결과이며 대부분의 경우 문제를 해결하지 못했다. –

관련 문제