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

ASP.NET Core Razor Pages MVC提交按钮无响应问题求助

问题解决方法

核心问题分析

你遇到的提交无反应问题,主要是Razor Pages页面与MVC控制器的路由适配错误、HTML结构不规范、参数绑定不匹配和缺少CSRF验证这几个原因导致的,以下是具体修复步骤:


1. 修复无效的HTML结构

表单内直接放置<tr>标签不符合HTML规范,浏览器可能无法正确解析表单,需要将表格元素包裹在<table>中:

@page
@model MyClientBuddy.Pages.Index1Model

<form name="AddNewClient" method="post" asp-controller="Client" asp-action="AddNewClient">
    <table>
        <tr>
            <td></td>
            <td><input type="text" name="firstNameTextBox" placeholder="First Name" /></td>
            <td>
                <input type="submit" class="btn btn-primary" name="saveButton" value="Save">
            </td>
        </tr>
    </table>
    @Html.AntiForgeryToken()
</form>

2. 正确关联控制器与动作

asp-controller和asp-action属性需要放在<form>标签上(而非提交按钮),这样Tag Helper才能正确生成指向MVC控制器的提交地址。同时添加@Html.AntiForgeryToken(),避免ASP.NET Core默认的CSRF验证拦截请求。

3. 修正控制器参数绑定

控制器方法的参数名submitButton与表单按钮的name="saveButton"不匹配,导致无法正确接收参数,同时建议添加表单中输入框的参数以便业务处理:

using Microsoft.AspNetCore.Mvc;

namespace MyClientBuddy.Controllers
{
    public class ClientController : Controller
    {
        [HttpPost]
        public ActionResult AddNewClient(string saveButton, string firstNameTextBox)
        {
            // 这里可以获取firstNameTextBox的值进行业务处理
            //Do stuff...
            return RedirectToAction("Clients");
        }
    }
}

4. 确认路由配置有效性

确保Program.cs中同时启用了MVC控制器和Razor Pages的路由支持:

var builder = WebApplication.CreateBuilder(args);

// 添加MVC和Razor Pages服务
builder.Services.AddControllersWithViews();
builder.Services.AddRazorPages();

var app = builder.Build();

app.UseRouting();
app.UseAuthorization();

// 配置MVC默认路由
app.MapControllerRoute(
    name: "default",
    pattern: "{controller=Home}/{action=Index}/{id?}");

// 配置Razor Pages路由
app.MapRazorPages();

app.Run();

调试验证方法

打开浏览器开发者工具(F12),切换到网络标签,点击提交按钮后查看请求:

  • 如果出现404错误:说明路由地址生成错误,检查asp-controller和asp-action的名称是否与控制器类、方法名完全一致(区分大小写)
  • 如果出现400错误:大概率是缺少CSRF令牌,确认表单中已添加@Html.AntiForgeryToken()

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 05:05:21