You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Form的action属性中调用VB.NET函数?

解决ASP.NET表单Action属性服务器端代码未解析的问题

问题核心是带runat="server"的服务器端表单,ASP.NET会自动接管Action属性的生成,直接在前端写<%= %>或<% %>语法不会被解析,而是被当作普通字符串输出,所以才会出现URL中包含<%=%20AllowedURL()%20%>的情况,导致400错误。

你可以通过以下两种方式修复:

方式一:后台代码设置Action属性

保留runat="server"的表单,在后台代码(比如Page_Load事件)中设置Action值:

protected void Page_Load(object sender, EventArgs e)
{
    form1.Action = AllowedURL();
}

方式二:使用普通HTML表单

如果不需要服务器端表单的特性,去掉runat="server",这样前端的服务器端代码会被正常解析:

<form id="form1" action="<%= AllowedURL() %>">
    <!-- 表单内容 -->
</form>

额外检查点:

  • 确保你的页面后缀是.aspx,只有ASP.NET页面才会解析<%= %>这类服务器端代码;如果是.html后缀,服务器不会处理这类语法,直接原样输出。

内容的提问来源于stack exchange,提问作者kaz00ie

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 05:34:51