使用JQuery/AJAX渲染局部视图

使用JQuery/AJAX渲染局部视图,jquery,ajax,asp.net-mvc,Jquery,Ajax,Asp.net Mvc,我尝试渲染div元素之间的局部视图和位置。 我读的文章很少。 但还是不行 我哪里出错了 A.)我要渲染局部视图的位置: <div id="target"> </div> 我还尝试了: $.ajax({ url: '@Url.Action("GetMessageTypeView", "EmailMessages")', type: "POST", contentType: "application/json; ch

我尝试渲染div元素之间的局部视图和位置。 我读的文章很少。 但还是不行

我哪里出错了

A.)我要渲染局部视图的位置:

<div id="target">

        </div>
我还尝试了:

$.ajax({
        url: '@Url.Action("GetMessageTypeView", "EmailMessages")',
        type: "POST",
    contentType: "application/json; charset=utf-8",
    success: function (data) {
        $('#target').html(data);
    }
});
在这两种情况下,我都调用了控制器操作,但没有结果

C.)我的控制器操作:

 $("#target").load('@Url.Action("GetMessageTypeView", "EmailMessages")');
public ActionResult GetMessageTypeView()
    {
        return PartialView("Partials/MessageTypes");
    }
我哪里出错了? 是否可以在没有调用控制器的情况下呈现局部视图并将其放置在页面中的某个位置?
谢谢

没有看到您提到的错误,我确实看到您的代码有一个问题,ajax调用的内容类型不正确,应该是:

$.ajax({
        url: '@Url.Action("GetMessageTypeView", "EmailMessages")',
        type: "POST",
    contentType: "text/html; charset=utf-8",
    success: function (data) {
        $('#target').html(data);
    }
});

jquery期望从服务器返回json,但当它获得部分视图的html时,它不知道如何处理它。我最近遇到了这个问题,我甚至没有收到任何错误,只是没有做任何事情。

没有看到您提到的错误,我确实看到您的代码有一个问题,ajax调用的内容类型不正确,应该是:

$.ajax({
        url: '@Url.Action("GetMessageTypeView", "EmailMessages")',
        type: "POST",
    contentType: "text/html; charset=utf-8",
    success: function (data) {
        $('#target').html(data);
    }
});

jquery期望从服务器返回json,但当它获得部分视图的html时,它不知道如何处理它。我最近遇到了这个问题,我甚至没有收到任何错误,只是没有做任何事情。

没有看到您提到的错误,我确实看到您的代码有一个问题,ajax调用的内容类型不正确,应该是:

$.ajax({
        url: '@Url.Action("GetMessageTypeView", "EmailMessages")',
        type: "POST",
    contentType: "text/html; charset=utf-8",
    success: function (data) {
        $('#target').html(data);
    }
});

jquery期望从服务器返回json,但当它获得部分视图的html时,它不知道如何处理它。我最近遇到了这个问题,我甚至没有收到任何错误,只是没有做任何事情。

没有看到您提到的错误,我确实看到您的代码有一个问题,ajax调用的内容类型不正确,应该是:

$.ajax({
        url: '@Url.Action("GetMessageTypeView", "EmailMessages")',
        type: "POST",
    contentType: "text/html; charset=utf-8",
    success: function (data) {
        $('#target').html(data);
    }
});


jquery期望从服务器返回json,但当它获得部分视图的html时,它不知道如何处理它。我最近遇到了这个问题,我甚至没有出错,只是什么也没做。

你的div格式不正确。使用
。没有帮助。这有什么不对?我总是使用这样那样的格式。为什么你要用javascript而不仅仅是使用
@Html.Partial()
?(动作方法似乎没有以任何方式修改局部视图)我必须在单击按钮时插入局部视图。你有什么想法来完成这个吗?这没有意义,因为你没有将任何参数传递给
GetMessageTypeView()
,所以你返回的视图总是相同的(因此为什么不先加载它)。但是,
.load()
方法似乎没有什么问题(请参阅Phaeze answer了解
.ajax()
方法的问题。我怀疑这是视图或视图的名称。在
GetMessageTypeView()
中放置一个断点,并检查它是否被击中。PS。要回复注释,请在“@Stephen..”之前您的div格式不正确。使用
。没有帮助。这有什么问题:?我总是使用这样那样的格式。为什么您要使用javascript而不仅仅是使用
@Html.Partial()
?(操作方法似乎没有以任何方式修改部分视图)我必须在单击按钮时插入部分视图。您有什么想法来完成此操作吗?这没有意义,因为您没有将任何参数传递给
GetMessageTypeView()
,因此返回的视图将始终是相同的(因此,为什么不首先加载它)。但是
.load()似乎没有问题
method(请参阅Phaeze answer了解
.ajax()
方法的问题。我怀疑这是视图或视图的名称。在
GetMessageTypeView()
中放置一个断点,并检查它是否被击中。PS。要回复评论,请在“@Stephen..”之前加上您的div格式不正确。使用
。没有帮助。这有什么问题:?我总是使用这样那样的格式。为什么您要使用javascript而不仅仅是使用
@Html.Partial()
?(操作方法似乎没有以任何方式修改部分视图)我必须在单击按钮时插入部分视图。您有什么想法来完成此操作吗?这没有意义,因为您没有将任何参数传递给
GetMessageTypeView()
,因此返回的视图将始终是相同的(因此,为什么不首先加载它)。但是
.load()似乎没有问题
method(请参阅Phaeze answer了解
.ajax()
方法的问题。我怀疑这是视图或视图的名称。在
GetMessageTypeView()
中放置一个断点,并检查它是否被击中。PS。要回复评论,请在“@Stephen..”之前加上您的div格式不正确。使用
。没有帮助。这有什么问题:?我总是使用这样那样的格式。为什么您要使用javascript而不仅仅是使用
@Html.Partial()
?(操作方法似乎没有以任何方式修改部分视图)我必须在单击按钮时插入部分视图。您有什么想法来完成此操作吗?这没有意义,因为您没有将任何参数传递给
GetMessageTypeView()
,因此返回的视图将始终是相同的(因此,为什么不首先加载它)。但是
.load()似乎没有问题
method(请参阅Phaeze answer了解
.ajax()
方法的问题。我怀疑这是视图或视图的名称。在
GetMessageTypeView()
中放置一个断点,并检查它是否被击中。PS。要回复评论,请在“@Stephen..”之前加上