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

Razor Pages中通过Ajax无法在主视图加载局部视图的问题

问题修复方案

错误点分析及修正

  1. Ajax请求URL格式错误
    Razor Pages中,GET类型的handler方法命名以OnGet开头,请求时只需指定handler=方法名前缀(去掉OnGet),不需要加括号。你的URL应该改为:
url: "/Employees/Index?handler=Partial",
  1. jQuery选择器语法错误
    (".list")缺少jQuery的$符号,无法正确定位容器元素,修正为:
$(".list").append(data);
  1. 确保局部视图不加载主布局
    打开_ListPartialView.cshtml,在顶部添加布局禁用指令,避免重复渲染主视图:
@{
    Layout = null;
}

修正后的完整代码

Ajax请求代码

$(document).ready(function() {
    AddList();
})

function AddList(){
    $.ajax({
        url: "/Employees/Index?handler=Partial",
        type: "GET",
        success: function (data) {
            $(".list").append(data);
        }
    });
}

PageModel代码(无需修改,确认返回PartialView即可)

public async Task<IActionResult> OnGetPartial()
{
    Employee = await _context.Employee.ToListAsync();
    return Partial("_ListPartialView", Employee);
}

额外注意事项

  • 如果页面启用了防伪造令牌验证(默认Razor Pages会启用),GET请求无需令牌,但后续改为POST请求时,需要在Ajax中携带RequestVerificationToken。
  • 确认.list容器在主视图中存在,且选择器无拼写错误。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 08:31:06