Dan*_*ola 13 forms asp.net methods get
我在我正在开发的应用程序中有一个搜索表单,我希望它相当于method="GET".
因此,当点击搜索按钮时,用户前往 search.aspx?q=the+query+he+entered
我想要这个的原因只是可以添加书签的URL,而且这样做会感觉更干净.
我也不希望将viewstate隐藏字段值附加到URL.
我能想到的最好的是:
Response.Redirect.onclick处理程序附加到触发的按钮window.location.replace.两者都感到古怪和次优......你能想到一个更好的方法吗?
sea*_*anb 11
使用普通的旧HTML表单,而不是服务器端表单(runat = server),你应该确实能够使它工作.
但是,如果您有一个开箱即用的visual studio母版页,它以服务器端形式包装整个页面,那么这可能会成为一个问题,因为您无法嵌套表单.
Web表单不必吮吸,但默认实现通常会这样做.您不必为所有内容使用Web表单.有时,普通的旧帖子/获取和处理请求代码就可以了.
我在一个网站上工作,必须发布到第三方网站,在客户的网站上进行搜索.我最终做了一个简单的Response.Redirect并通过查询字符串传递搜索参数,如下所示:
protected void Button1_Click(object sender, EventArgs e)
{
string SearchQueryStringParameters = @"?SearchParameters=";
string SearchURL = "Search.aspx" + SearchQueryStringParameters;
Response.Redirect(SearchURL);
}
Run Code Online (Sandbox Code Playgroud)
在您的pageload中的Search.aspx页面上...
protected void Page_Load(object sender, EventArgs e)
{
if (!string.IsNullOrEmpty(Request.QueryString["SearchParameters"]))
{
// prefill your search textbox
this.txtSearch.Text = Request.QueryString["SearchParameters"];
// run your code that does a search and fill your repeater/datagrid/whatever here
}
else
{
// do nothing but show the search page
}
}
Run Code Online (Sandbox Code Playgroud)
希望这可以帮助.
| 归档时间: |
|
| 查看次数: |
20556 次 |
| 最近记录: |