问题标签 [partialviews]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1770 浏览

asp.net-mvc - 带有表单的 ASP.NET MVC 部分视图

我有一个场景,我想使用部分视图,但在将数据传递给控制器​​时遇到了问题。这是我正在尝试做的一个基本示例。

对象:

  • 顾客
  • 命令

客户有一个IList<Order>。我希望部分视图允许用户编辑信息。我可以获取要显示的数据,但是当表单发布时 Customer 对象下的列表为空。

我还尝试在我的部分视图中使用单独的形式。当我这样做时,如果我像这样在控制器上创建参数,我会得到数据:

但是当我这样做时

该列表为空。

如果有人对如何实现这一目标有更好的建议,请告诉我。

0 投票
1 回答
63 浏览

asp.net-mvc-2 - ASP.NET MVC,通过 PartialViews 加载表单

我正在使用 ASP.Net MVC 和 jQuery 开发应用程序。根据用户的操作,我使用 jQuery 的 $.ajax 方法将部分视图加载到页面中。

我遇到的问题与包含表单的特定局部视图有关,其中启用了客户端验证。在这个局部视图中生成的 JavaScript 代码似乎没有被执行,因此客户端验证不起作用。

有人有这个问题的解决方案吗?

谢谢!

0 投票
1 回答
2134 浏览

asp.net-mvc-3 - 带有 Razor 的 MVC 3 关于部分视图的问题

带有 Razor 的 MVC 3 关于部分视图的问题。

我有这个 :

对于一个非常简单的帖子和回复我正在玩的 MVC 应用程序以供学习。我无法显示部分回复:/

如果我添加部分,我会得到“MvcGroupie.Models.Message”,但这个字典需要一个“MvcGroupie.Models.Reply”类型的模型项。好的,所以你不能在同一页面上使用差异模型?第一行以@model MvcGroupie.Models.Message 开头,因此我可以访问model.postSubject 等。但是,如果我想添加回复并让人们能够从它不允许的同一页面回复,他们将属于@model MvcGroupie.Models.Reply ...

很好奇如何解决这个问题...我尝试了 @Html.Partial("~/Views/Shared/replyPartial.cshtml", Model.Reply) 但它不识别 Model.Reply ....

严重阻碍我学习的方式有什么帮助吗?

0 投票
2 回答
5709 浏览

asp.net-mvc - 如何在 ASP.NET MVC 局部视图中使用匿名列表作为模型?

我有一个Contact对象列表,我只想要一个属性子集。所以我使用 LINQ 投影来创建一个匿名列表,并将它传递给一个局部视图。但是当我在局部视图中使用该列表时,编译器说它没有这些属性。我尝试了以下最简单的情况,但我仍然没有机会在局部视图中使用匿名对象或列表。

在局部视图中,我有:

但它说 @Model 没有 FirstName 和 LastName 属性。这里有什么问题?当我使用@Model 时,这个字符串会在浏览器中呈现:

0 投票
2 回答
1468 浏览

.net - 部分视图没有 data-val* 属性

我有一个带有 Html.BeginForm() 的视图,它调用在主视图模型中传递的部分视图(下面提到并且没有表单)。该模型具有数据注释。

如果我在不选择正确值的情况下尝试提交,则页面验证的初始加载效果很好。

我在页面上还有另一个按钮,如果单击它会加载页面上相同局部视图的另一个实例,使用 $.ajax() 发布到控制器,它只返回 PartialView,并将其附加到现有的 div。

如果我现在尝试提交这些动态控件的表单,尽管它们绑定到同一个模型并且虽然我设置了正确的 .ValidationMessageFor 助手,但它们不会出现验证,因为这些控件似乎不是使用 data-val 生成的* 属性。

我使用 fiddler 并发现 $.ajax 发布到控制器,生成带有简单且没有生成的 ValidationMessage 的部分视图。因此不能使用不显眼的 javascript 来添加动态控件。

是否有必要始终将视图放在表单中?在这种情况下,我将有嵌套的表单,这将无法正常工作。

编辑 1:正如 Adam Tuliper 在问题ViewContext.FormContext = new FormContext 中所提到的,生成了具有所有 data-val* 属性的部分视图。因此回答了我上面的问题。现在动态内容的验证没有触发。所以根据Erick(在评论部分),我删除了表单验证器 [form.removeData('validator');] 然后它也开始验证动态内容。

下面是部分视图

这是局部视图的模型

0 投票
1 回答
329 浏览

.net - MVC2 中局部视图中的匿名类型模型

我见过许多使用匿名类型将数据传递给视图的示例。不过,我似乎遗漏了一些关键信息。考虑以下人为设计的示例:

Index.aspx 调用

而 title.ascx 很简单:

导航到有问题的操作会导致运行时异常:

我意识到还有其他方法可以做到这一点。我可以将我的视图设为强类型或将数据推送到 ViewData 对象中。在这种特殊情况下,我希望能够传递任何具有 Name 属性并绑定到 Name 的对象。有什么我想念的吗?

0 投票
1 回答
1611 浏览

ajax - MVC3 - 参数值始终为空

我正在尝试使用两个部分视图和 Ajax 制作“高级搜索”视图。我定义了一个“SearchFilter”实体,将所有可用的搜索条件作为属性。在“_Filter”部分视图(OnSuccess AjaxOption)中提交时,我需要将其传递给更新“_Results”部分视图的“ListResults”操作。

问题是我总是得到一个空实体作为 ListResults 操作的传入参数。

代码如下:

高级搜索视图.cshtml

_Filter.cshtml

控制器

视图模型

我毫不怀疑我做错了什么,但我看不出它是什么。

BeginForm 生成的 HTML 标记如下:

0 投票
2 回答
1378 浏览

.net - MVC3 .net 多模型或单视图模型

我想构建一个具有 3 个选项卡(因此 3 个 div)的网页:选项卡 1 - 更新个人详细信息选项卡 2 - 检查订单选项卡 3 - 更改登录详细信息

据我所知,有两种方法可以实现这一点,但想知道最佳实践。

首先是有 3 个局部视图,每个视图都实现一个单独的模型,其次是有 3 个局部视图,它们实现一个单独的 ViewModel

如果使用局部视图的第一个选项会导致“期望模型 A 但得到模型 B”的错误,我相信您可以使用 RenderAction 来解决这个问题,但这是最佳实践吗?

欢迎发表意见。

谢谢

0 投票
1 回答
380 浏览

c# - MVC3 嵌套部分视图提交。它是如何工作的?

我已经开始使用 mvc3 模式并且面临一个问题。

问题陈述如下:

我有一个局部视图,可以说它MasterPartial呈现一些内容并与一个名为模型的模型绑定,该模型MasterPartialModel包含在该局部视图上显示的所有必要数据。具有嵌套的MasterPartialView局部视图直到 n 级,并且在 中按需呈现的嵌套子局部视图MasterPartialViewChildPartialView.

此外,MasterPartial视图具有表单标签。现在我的问题是提交时我将收到哪个模型,据我了解,它将是视图模型,其中声明了表单。我怎么知道用户是否对其中一个子视图呈现的数据进行了更改。我将如何获得用户按需渲染的子视图模型,或者我们如何满足 MVC3 模式中的此类问题?

0 投票
1 回答
2030 浏览

asp.net-mvc-3 - 单击 PartialView 中的按钮后重新加载主视图

我有一个部分视图,用户可以在其中执行搜索,搜索结果显示在选择框中。在我的主视图中,我有一个部分应该在按下选择按钮后显示搜索结果。现在,当我单击选择按钮时,会将正确的信息加载到我的主视图的正确模型中,但主视图不会改变。当我单击刷新时,页面会正确更新。在插件视图中单击按钮时如何使页面自动更新?

我在主应用程序的主视图 ( Index.vbhtml) 中的部分:

这是我的插件中的控制器方法:

我尝试在 hostApp 对象中设置一个布尔值,然后在我的主剃须刀视图中调用此函数,如果它是真的:

编辑:

单击选择按钮时调用的 JS 函数:

插件视图中使用的表单: