我有一个部分视图,其中包含以下详细信息,
_PartialTEST.cshtml
@model FreeLance.Web.Models.PArtialTESTModel
@Html.RadioButtonFor(m => m.D1, "true", new { Name = "test1", @id = "g1", @checked = "true" }) @Html.LabelFor(m => m.MSGD1, @Model.V1)
@Html.RadioButtonFor(m => m.D2, "false", new { Name = "test1", @id = "g2" }) @Html.LabelFor(m => m.MSGD2, @Model.V1)
@Html.RadioButtonFor(m => m.D3, "false", new { Name = "test1", @id = "g3" }) @Html.LabelFor(m => m.MSGD3, @Model.V1)
在另一个视图中使用,
MainTEST.cshtml
<div id="partialDIV">
@{
@Html.Partial("_PartialTEST", Model)
}
</div>
现在在活动期间我尝试使用 AJAX
获取新值$.ajax({
type: "GET",
url: href,
traditional: true,
async: false,
cache: false,
contentType: 'application/json',
data: { DID: DID },
success: function (data) {
debugger;
$('#partialDIV').html(data);
},
error: function (arg, data, value) {
}
});
现在虽然“数据”包含所有值,但我无法获取部分视图。任何帮助,我在这里缺少什么?
答案 0 :(得分:2)
通过将数据类型添加为&#39; html&#39;
来更改您的AJAX查询 $.ajax({
type: "GET",
url: href,
traditional: true,
async: false,
cache: false,
contentType: 'application/json',
datatype : "html",
data: { DID: DID },
success: function (data) {
debugger;
$('#partialDIV').empty();
$('#partialDIV').html(data);
},
error: function (arg, data, value) {
}
});
答案 1 :(得分:1)
在服务器端使用此代码返回部分视图::
public PartialViewResult MainTEST()
{
var model = new FreeLance.Web.Models.PArtialTESTModel();
return PartialView("_PartialTEST.cshtml",model);
}
并且在客户端的AJAX中对其成功进行了一些更改::
$.ajax({
type: "GET",
url: href,
traditional: true,
async: false,
cache: false,
contentType: 'application/json',
data: { DID: DID },
success: function (data) {
debugger;
$('#partialDIV').empty();
$('#partialDIV').html(data);
},
error: function (arg, data, value) {
}
});
答案 2 :(得分:1)
请看一下这些帖子:
http://mazharkaunain.blogspot.in/2011/05/aspnet-mvc-razor-render-partial-view.html
http://mazharkaunain.blogspot.in/2011/04/aspnet-mvc-render-partial-view-using.html
答案 3 :(得分:1)
您错过了单个参数数据类型,即您必须将数据类型指定为控制器函数返回的类型。由于您需要部分查看,因此必须将数据类型指定为html。
.ajax({
type: "GET",
url: href,
async: false,
cache: false,
contentType: 'application/json',
datatype:'html',
data: { DID: DID },
success: function (data) {
debugger;
$('#partialDIV').html(data);
},
error: function (arg, data, value) {
}
});
这可以解决您的问题