剃须刀页面中的Ajax GET调用未在控制器的方法内部中断

时间:2019-02-15 12:40:31

标签: ajax asp.net-mvc razor

我使用ajax使用以下javascript:

function MoveToWeek(weekIndex) {
    if (weekIndex == 1) {
        var index = @Model.WeekIndex;
        index = index+1;
        $.ajax({
            url: '@Url.Action("RenderCalendar", "Calendar")',
            data: { weekIndex: index },
            type: "GET",
            success: function (data) {
                $("#RenderCalendarArea").html(data);
            }
        });
    }
    else if (weekIndex == -1) {
        var index = @Model.WeekIndex;
        index = index+-1;
        $.ajax({
            url: '@Url.Action("RenderCalendar", "Calendar")',
            data: { weekIndex: index},
            type: 'GET',
            success: function (data) {
                $('#RenderCalendarArea').html(data);
            }
        });
    }
}

以及我的控制器“ CalendarController”中的以下方法:

    [HttpGet]
    public ActionResult RenderCalendar(int weekIndex = 0)
    {
         //..snip
    }

我已经确认ajax代码可以运行(如果我在$ .ajax行上放置了一个javascript断点,它将在此处中断)。另外,ajax方法中的值似乎确实设置正确。在调试器中,javascript方法的编译方式如下:

function MoveToWeek(weekIndex) {
    if (weekIndex == 1) {
        var index = 0;
        index = index+1;
        $.ajax({
            url: '/Calendar/RenderCalendar',
            data: { weekIndex: index },
            type: "GET",
            success: function (data) {
                $("#RenderCalendarArea").html(data);
            }
        });
    }
    else if (weekIndex == -1) {
        var index = 0;
        index = index+-1;
        $.ajax({
            url: '/Calendar/RenderCalendar',
            data: { weekIndex: index},
            type: 'GET',
            success: function (data) {
                $('#RenderCalendarArea').html(data);
            }
        });
    }
}

但是,运行此代码时,它不会在控制器的方法内部中断。谁能看到为什么这行不通?

1 个答案:

答案 0 :(得分:0)

这个特定的局部视图没有使用布局文件...这意味着它没有导入jquery库。这就是为什么它不起作用。哎呀。