首页 新闻 搜索 专区 学院

asp.net 多个form怎么设计好

0
悬赏园豆:5 [已关闭问题]

asp.net本身支持一个runat="server" form 如果需要多个就不能嵌套写了,有些搜索的代码偏偏布局在form里面,而我又不想写成服务器控件,只想通过form进行提交,这时候就很麻烦了,大家有什么好方式?

类似下面的代码,页面顶部尾部中间都有分布,html页面好说,aspx页面怎么设计好呢

 <form action="/Search.aspx" method="get" id="searchform" onsubmit="return goSearch()" target="_blank">

 <input tabindex="1" type="text" id="keyword" name="keyword" value="" onfocus="this.value=''" />
                                <button tabindex="2" type="submit">搜 索</button>

</form>

红尘中迷茫的主页 红尘中迷茫 | 初学一级 | 园豆:60
提问于:2009-04-17 15:47
< >
分享
其他回答(4)
0

去掉runat="server" 属性,用原始的form就可以多个了~

Ryanism | 园豆:39 (初学一级) | 2009-04-17 15:52
0

ASP.NET内部对象模型 就是1个Form 而且1个Form也完全可以满足各种需求

 

  所以  建议你 使用 母板页  可以解决你的问题  又不用使用多FORM 

西凡 | 园豆:139 (初学一级) | 2009-04-17 16:34
0
1小时前   红尘中迷茫 :
没有runat="server" 那些服务器控件怎么办?

采用asp或jsp那种直接提交表单的方法。
比如在另一个页面接收,但是你所要解决的问题或许不应该非用多个加runat的form
对于asp.net应该有合适的解决方案,转换一个思路。

大气象 | 园豆:79 (初学一级) | 2009-04-17 17:05
1

一个页面可以有一个runat="server"表单,其他的用一般的form就可以了

kinger | 园豆:180 (初学一级) | 2009-04-17 17:52
0

不必去掉 runat=server ,

只要在不同的按钮提供不同的name值,根据这些值来判断提交行为。

或者,通过隐藏域  (<input type="hidden" name="pram1"  value="xxx" >)  来确定不同的行为也可。

最后,是微软给出的解决方案:

同一个页面里定义多个runat=server的窗体是可以的,但是只能够有一个窗体的 visible 属性等于 true 。

 

 

合理综合运用以上几点,可以解决绝大多数问题了。 

kvspas | 园豆:204 (菜鸟二级) | 2009-04-20 03:55
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册