问题标签 [begincollectionitem]
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.
c# - 为什么我在模型绑定后会在集合中获得随机的 null 项?
我正在为 ASP MVC 使用包 BeginCollectionItem。我有一个要创建的表单和一个实体,它有一个 ICollection 属性。该属性需要在表单中动态填充项目。
这是 DTO 的外观:
这就是视图的样子:
练习_表格部分视图:
一切正常,当我发布 POST 时,我看到为集合中的每个项目分配了正确的索引:
问题是,有时,我的控制器中的一些练习集合的项目随机为 null:
什么可能导致这种行为?我知道如果我使用带有整数索引的 for 循环它会带来这些问题,因为我可以打破顺序绑定,但这些是 GUID 对吗?
注意:我的 Model.Exercise_Create 视图模型与 DTO 看起来几乎相同。
更新:现在我看到唯一的空项目是具有以字母开头的 GUID 索引的项目。请参阅我发布的 FormData 以确认这一点:
我没有实现任何自定义数据绑定,这很奇怪......
c# - BeginCollectionItem 和 FluentValidation
任何人都知道是否可以将 FluentValidation 与 BeginCollectionItem 一起使用,它将 GUID 附加到字段/属性名称?我能够设置验证器:
Insureds
是我的收藏。ModelState 验证正确,但消息没有放在无效字段旁边:LastName
。
ajax - MVC Ajax 调用未正确填充“BeginCollectionItem”字符串
我有一个 PartialView 在这样调用时可以正常工作:
下一部分代码,我有一个 Ajax 调用,它返回模型并添加到 DOM:
“~/Views/FormEmailMessageEmailAddresses/_Edit.cshtml”看起来基本上是这样的:
从数据库条目填充 PartialView 时,Html.BeginCollectionItem 字符串看起来类似于EmailMessages[997a1db6-6205-4118-90e4-11013d8d33db].ToRecipients[780bd8fa-4121-4d45-8fbc-35f4b8fd3086]
,但是,当从 Ajax 函数调用时,它看起来像.ToRecipients[222a5fa2-70d6-4cac-afbc-e865b0a753be]
。
因为缺少前缀,控制器看不到新的集合。
使用HtmlFieldPrefix
Ajax 调用或其他我不正确的东西时没有信息,请让我知道您的想法,以便为我提供解决方案。
razor - 使用 BeginCollectionItem 在 MVC5 局部视图中添加/删除 Lineitems
我正在尝试将 EnquiryLineItems 添加/删除到报价视图中。试图跟随
- 带有 BeginCollectionItem 的 MVC 5 动态行
- 部分内的 BeginCollectionItem 部分行为不正确
- 带有部分 CRUD 的 MVC 5 BeginCollectionItem
但是在单击添加时会引发错误
加载资源失败:服务器响应状态为 500(内部服务器错误)
并且可能构造错误的 URl(http://localhost:53363/Enquiries/CreateLineItem?_=1505728151541
- 根据错误消息)
使用 Partialview 和 Single Controller 。
视图模型:
控制器:
MainView (Enquiry-create) - 只添加了相关代码
部分视图 - _createEnquiryItem.cshtml
我在这里做错了什么。此外,这是否可以通过使用单个局部视图的更好或更简单的方法来完成?请帮忙。提前致谢。
jquery - 使用动态创建的 PartialViews mvc5 时验证不起作用
我有一个使用 BeginCollectionItem 和部分视图动态创建/删除项目(模型视图)的视图。动态创建的视图的验证未触发。代码:主视图:
部分视图:
视图模型:
在这种情况下使用验证的类似问题在这里SO1 But didn't work 。我在视图中引用了不显眼的 Jquery 验证。请帮忙。谢谢阅读 。
asp.net-mvc - MVC BeginCollectionItem
我在将部分视图 BeginCollectionItem 保存到数据库时遇到了一些问题。我有一个表单,它具有可以添加到页面的动态数量的“部分”,并且在每个字段中都有一个文本框,用户可以在其中输入部分名称。
据我所知,局部视图中的 BeginCollectionItem 工作正常,但是我无法将信息发布到数据库中。在我的其他表单中,我使用 [bind()] 将数据发送到数据库,是否可以将其放入列表中,然后通过绑定发布?
我在下面包含了我的代码: 模型:
cshtml:
局部视图:
控制器:
asp.net-mvc - MVC BeginCollectionItem 嵌套列表索引不起作用
我有一个运行良好的 BeginCollectionItem 中继器,但是当我尝试按照 Joe Stevens 博客添加嵌套列表时,它并没有按我预期的方式工作。
我在使用 AspNetCore 时使用了 BeginCollectionItemCore,我从这里获取了代码,因为它说它已经包含来自博客的内置元素:https ://github.com/saad749/BeginCollectionItemCore
我有一个名为 Section 的主要 BeginCollectionItem 和一个名为 SingleLine 的嵌套集合。我希望代码输出类似: Section[long-code-here].SingleLine[another-code-here].SingleLineTextBlock 但是我得到的是 SingleLine[long-code-here].SingleLineTextBlock
我在下面包含了我的代码;
模型:
部分观点:
Ajax 添加新行:
编辑为:
编辑控制器:
asp.net-core-mvc - 将 BeginCollectionItem 与 MVC 核心一起使用
在使用 MVC 核心实现 BeginCollectionItem 时,我似乎没有遇到与大多数人相同的问题,我没有收到任何数据。
我有这个主页,上面有很多工作,但这里是向页面添加新部分的 javascript,以及将在下面添加的部分。
现在,我们有了这个部分来开始我们正在构建的表单。
然后我有这个部分部分,我们将在其中添加越来越多的内容。
帖子的回复发送到这里......
就像我之前说的,当我点击提交时,我没有得到帖子中的部分列表。
asp.net-mvc - MVC BeginCollectionItem 帮助器未绑定到视图模型中的模型实例
在 MVC5 中构建动态列表。表单将发布到控制器,我可以看到在 chrome 开发工具中正确填充了 StudentList,但在控制器中,StudentList 是空的。
模型:
看法:
部分观点:
如果我从 ViewModel 中取出 Student 实例并将其替换为学生模型属性,然后将局部视图更改为直接绑定到 Name 属性,它将起作用。
至
控制器岗位:
当我在帖子到达控制器之前拦截它时,我可以看到它已正确绑定,但在控制器中 StudentList 是空的。
我试图避免在视图模型中复制学生模型,因为它是重复的,并且所有验证规则都已经在学生模型中,所以我也必须在视图模型中复制所有这些,这似乎是错误的。