ASP.NET C# 点击按钮将TextBox值作为查询字符串提交到其他页面的实现方法
ASP.NET WebForm 实现文本框内容作为查询参数跳转的解决方案
以下两种方案均可实现需求,可根据你的场景选择:
方案1:服务端事件实现(最适合初学者,逻辑写在后端)
- 首先修改你的前端按钮代码,添加点击事件绑定:
<asp:Button ID="Button2" runat="server" Text="Submit" OnClick="Button2_Click" />
- 在对应页面的后端.cs代码文件中添加事件处理方法:
protected void Button2_Click(object sender, EventArgs e) { // 获取文本框输入内容,做URL编码避免特殊字符导致查询字符串失效 string inputVal = Server.UrlEncode(TextBox1.Text.Trim()); // 跳转地址注意用正斜杠,你问题里的反斜杠是错误写法 Response.Redirect($"http://website/depth_chart?recid={inputVal}"); }
方案2:客户端JS实现(无需回发服务端,响应更快)
- 给按钮添加客户端点击事件,阻止默认回发:
<asp:Button ID="Button2" runat="server" Text="Submit" OnClientClick="jumpToPage(); return false;" />
- 在页面任意位置添加JS代码:
function jumpToPage() { // 获取文本框的客户端DOM对象,用<%= TextBox1.ClientID %>适配WebForm控件自动生成的客户端ID const input = document.getElementById('<%= TextBox1.ClientID %>'); const inputVal = encodeURIComponent(input.value.trim()); window.location.href = `http://website/depth_chart?recid=${inputVal}`; }
注意事项
- 必须对用户输入内容做URL编码,避免输入空格、&、中文等特殊字符时跳转地址出错
- 跳转地址的路径分隔符请使用正斜杠
/,不要使用反斜杠\
内容的提问来源于stack exchange,提问作者William Toth
相关产品推荐
相关产品推荐

