2010-02-24 2 views
0
<form runat="server" id="outer" > 

    <form name="inner1" method="POST" action="http://www.somesite.com/page.php" > 
    <input type="text" size="7" name="o" id="origin" value="london" ></input> 
    <input type="submit" name="getDirectionsBtn" id="btnSubmit" value="Submit" /> 
    <input type="hidden" name="oo" value="p" /> 
    </form> 

    <form name="inner2" method="POST" action="http://www.somesite.com/page.php" > 
    <input type="text" size="7" name="o" id="origin" value="london" ></input> 
    <input type="submit" name="getDirectionsBtn" id="btnSubmit" value="Submit" /> 
    <input type="hidden" name="oo" value="p" /> 
    </form> 

    <form name="inner3" method="POST" action="http://www.somesite.com/page.php" > 
    <input type="text" size="7" name="o" id="origin" value="london" ></input> 
    <input type="submit" name="getDirectionsBtn" id="btnSubmit" value="Submit" /> 
    <input type="hidden" name="oo" value="p" /> 
    </form> 
</form> 

둘째 + 내부 양식은 잘 작동하지만 처음에는 아무 것도 수행하지 않습니다. 내가 볼 수있는 한 깨진 태그는 없습니다.ASP.Net Server Form의 첫 번째 내부 양식이 POST가 아닙니다.

외부 사이트에 대한 POST이고 빈 창에서 열기 때문에 중첩 된 양식이 필요합니다.

+0

중첩 된 양식은 피해야합니다. – kgiannakakis

+0

그들은 피하는 것이 가장 좋을뿐 아니라, 브라우저가 작동하지 않을 것으로 예상하지 않는 한 브라우저에서 예상대로 작동하지 않습니다. – Gareth

답변

3

HTML 사양에서는 중첩 된 양식을 사용할 수 없습니다.

브라우저 및 표준 모드에 따라 첫 번째 내부 양식의 시작 태그가 무시된다는 것을 알게되면 <form> 메인이 첫 번째 내부 양식 닫기 태그로 닫히고 그 다음 양식이 "예상대로"일하고있다.

0

그래, 첫 번째 질문은 왜 양식을 중첩합니까? 이것은 무엇보다도 ASP.Net을 혼란스럽게합니다. 외부 양식을 제거하면 작동합니까?