gpt4 book ai didi

jquery - Html.RenderPartial 不产生值

转载 作者:行者123 更新时间:2023-12-01 00:39:33 27 4
gpt4 key购买 nike

大家好。

我知道这是 MVC 方面的一个非常基本的问题,但我一生都无法让 @Html.RenderPartial 不给我错误。我正在使用 VB.NET 和 Razor。我在网上找到的大多数示例都是用 C# 编写的,这对我来说并不难转换,但这个简单的例子却难倒了我。这是在我的索引 View 中,由 _Layout.vbhtml 呈现:

@Section MixPage
@Html.RenderPartial("_MixScreen", ViewData.Model)
End Section

上面的表达式不会产生值。

今天早上找了好久,我拿的例子的页面如下:

http://geekswithblogs.net/blachniet/archive/2011/08/03/walkthrough-updating-partial-views-with-unobtrusive-ajax-in-mvc-3.aspx

Getting a Partial View's HTML from inside of the controller

最终,我想做的是将模型返回并更新为 Controller 的部分 View :

    Function UpdateFormulation(model As FormulationModel) As ActionResult
model.GetCalculation()
Return PartialView("_MixScreen", model)
End Function

并且该 Controller 正在从 javascript 中的表达式调用:

function UpdateResults() {
jQuery.support.cors = true;
var theUrl = '/Home/UpdateFormulation/';
var formulation = getFormulation();
$.ajax({
type: "POST",
url: theUrl,
contentType: "application/json",
dataType: "json",
data: JSON.stringify(formulation),
success: function (result, textStatus) {
result = jQuery.parseJSON(result.d);
if (result.ErrorMessage == null) {
FillMixScreen(result);
} else {
alert(result.ErrorMessage);
}
},
error: function (xhr, result) {
alert("readyState: " + xhr.readyState + "\nstatus: " + xhr.status);
alert("responseText: " + xhr.responseText);
}
});
}

如果有更好的方法将此更新后的模型返回到 View 并仅更新此部分 View ,我会洗耳恭听。但这个问题的前提是:为什么RenderPartial没有产生值?

最佳答案

Html.RenderPartial 直接写入响应;它不返回值。因此您必须在代码块内使用它。

@Section MixPage
@Code
@Html.RenderPartial("_MixScreen", ViewData.Model)
End Code
End Section

您还可以使用不带代码块的 Html.Partial() 来执行相同的操作,因为 Partial() 返回一个字符串。

@Section MixPage
@Html.Partial("_MixScreen", ViewData.Model)
End Section

关于jquery - Html.RenderPartial 不产生值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11052331/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com