50分求解决 asp.net from问题

在aspx的页面里有有一个<form runt="server" id=from1></from> 当我在这里放了一个 <form id="search1" runat="server" name="search1" onsubmit="return goto()" method="post" action="#" target="_blank" ></from>的时候,我发现这个里面的<from>j里的action="b.aspx" 失效了,也就是说点击按钮不会跳转了,有的时候还会提示“一页只能有一个服务器端 Form 标记。 ”但是我有一个页面大from里面放了两个from里面的照样是正常的,而且可以跳转,这就让我非常想不通了,为什么有的时候可以,有的时候不可以,然道这里面有什么规则。请高手赐教下。
2026年09月26日 18:27
有3个网友回答
网友(1):

在标准的HTML里,在form里面再放form都是无效的,何况在asp.net里面,用法肯定是错误的,form可以并行出现,但是不能嵌套出现,这样,框架将不能识别你到底要提交哪个Form,如果你要实现不同的跳转,可以使用link控件,直接填写跳转地址,如果在跳转的时候还需要处理一些逻辑,那你就用Button控件,在事件里面处理完业务后,再使用Response.Redict("b.aspx");进行跳转,按照你说的,估计你就是需要处理点代码的,如果觉得Button不好看,asp.net还提供了LinkButton,显示为超链接,但是可以写事件。

如果还有问题,可以Hi。希望能帮到你。

网友(2):

我觉得action属性是将信息提交给服务器程序处理吧!而不是你所谓的跳转链接、跳转好像是Response.Redict("b.aspx");

网友(3):

一个aspx页面只能有一个form指定runat="server"属性, 而且如果form里面嵌套form话, submit事件执行的一定是最外层form的action属性