asp.net 形成目前的服务器
-
20-09-2019 - |
题
我有一个搜索形式上的每一页,因此我把它放在主页。之后添加 runat=server
这种形式,我现在无法使用其他形式,目前服务器;)
怎么人们通常得到围绕这个吗?
一个想法是围绕着整个页面有一个形式 runat=server
但后来我必须有代码在主页即使对那些形式上使用的只有一个子页面(如联系为例)。
怎么人们通常得到围绕这个吗?
。
解决方案
这往往被认为是在ASP.NET中最有问题的设计决策之一。这是一个可悲的事情,你还挺固定在这一个外形每页原则。
这是你可能需要有多种形式的一个原因是,默认按钮会被浏览器的提交按钮进行设置。有人输入到你的搜索框中,并按下回车键不应该提交的主要形式(假设是登录页面),但搜索按钮的微小形式。
的最简单和“标准”的方式来解决,这是使用一个asp:面板,并设置DefaultButton属性。这应该环绕既包括搜索字段和搜索按钮的一部分。
不要担心从母版内部编码<form>
,周围整个页面。这是一个常见的设计。最服务器控制需要一个形式,为什么不能简单地包括它无论:它应该是有
其他提示
我建议你有搜索HTML表格W母版页上/ O = RUNAT服务器,像
<form action="Search.aspx" method="get">
<input type="text" name="q" /><input type="submit" />
</form>
使用方法=获取有可能采取的搜索URL。然后做任何你在Search.aspx的代码隐藏需要与查询:
public void Page_Load(object sender)
{
string q = Context.Request.QueryString["q"];
/*...*/
}
第一个问题是,为什么你想要多运="服务"形式?
你仍然可以有形式没有 runat="server"
在网页上,或者使用 PostBackUrl
在酒店 Button
控制,以张贴到不同的ASP.NET 页。
收集的数据在多步骤过程中,你可以看的ASP.NET 向导控制,看到斯科特*格思里的 博文在这里.
或者你可以管理自己和使用ASP.NET 板,或使用已经提到 PostBackUrl
要从ASP.NET 页面一个不同的网页。