纸上得来终觉浅,绝知此事要躬行。

 

asp.net form标签嵌套 提交页面的解决方法

 

 

 

这个问题的原因其实并不是asp.net 运行机制的原因,而是因为在html中本身就不允许form标签嵌套使用,我试过document.getelementbyid("search") 语句但并不能得到search表单对象,因为在浏览器解析html是时候会忽略form标签中又嵌套的form标签。

解决方法:通过动态改变最外层form标签的action属性来达到form嵌套使用的效果,算是一种曲线解决方法。
修改上面的代码如下:

1 <form id="form1" runat="server"> //这个是asp.net页面最外层form标签
2 //搜索表单没有runat="server" 运行在客户端
3 <form id="search" action="search.aspx"> //搜索表单
4 <input type="text" name="searchtext" id="searchtext" />
5 <input name="subsearch" type="button" onclick="javascript:document.forms[0].action='search.aspx';document.forms[0].submit()" />
6 </form>
7 //投票表单
8 <form id="vote" action="vote.aspx"> //投票表单
9 <input type="text" name="votetext" id="votetext" />
10 <input name="subvote" type="button" onclick="javascript:document.forms[0].action='vote.aspx';document.forms[0].submit()" />
11 </form>
12 </form>

onClick为注要代码。

posted on 2010-10-18 14:47  JRoger  阅读(3945)  评论(1编辑  收藏  举报

导航