您的位置:首页 > 编程语言 > ASP

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

2009-04-01 19:30 471 查看
原帖地址:http://blog.cnria.com/post/aspnet-form-e5b58ce5a597-e68f90e4baa4e9a1b5e99da2e79a84e8a7a3e586b3e696b9e6b395-from-e5b58ce5a597-aspnet-e8a1a8e58d95.aspx

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

解决方法:通过动态改变最外层form标签的action属性来达到form嵌套使用的效果,呵呵,算是一种曲线解决方法吧。
修改上面的代码如下:
<form id="form1" runat="server"> //这个是asp.net页面最外层form标签
//搜索表单没有runat="server" 运行在客户端
<form id="search" action="search.aspx"> //搜索表单
<input type="text" name="searchtext" id="searchtext" />
<input name="subsearch" type="button" onclick="javascript:document.forms[0].action='search.aspx';document.forms[0].submit()" />
</form>
//投票表单
<form id="vote" action="vote.aspx"> //投票表单
<input type="text" name="votetext" id="votetext" />
<input name="subvote" type="button" onclick="javascript:document.forms[0].action='vote.aspx';document.forms[0].submit()" />
</form>
</form>

红色部门为注要代码。
如有写的不对的地方欢迎大家指正。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: