如何将 MVC3 webgrid 中添加的客户端行传递回控制器?

发布于 2024-12-19 05:57:34 字数 339 浏览 2 评论 0原文

我有一个包含一些字符串字段和一个列表的模型。在视图中,我使用 EditFor 作为字段,并希望使用 WebGrid 作为列表。

显示效果很好。但随后我使用 jQuery 客户端让用户将行添加到由 webgrid 生成的表中,这些行也可以在 UI 上正常显示。

然而,这些行在提交时似乎没有绑定回我的模型的列表。在控制器中,我看到发布的模型的字符串字段包含用户输入的任何内容。但模型的列表是空的 - 它不包含原始值也不包含新添加的值。

如何使回传到控制器的模型完全填充,包括 webgrid 生成的表现在的样子,就像字段一样?

我在论坛上看到了其他几个与 webgrid 类似的问题,但没有一个有答案。

I have a Model that contains some string fields and a List. In the view I use EditFor for the fields, and want to use WebGrid for the List.

Display works fine. But then I use jQuery client-side to let the user add rows to the table generated by the webgrid, which also show up fine on the UI.

However these rows don't appear to be tied back to my model's List upon a submit. In the controller I see that the posted model's string fields contain whatever was entered by the user. But the model's List is empty - it doesn't contain the original values nor the newly added values.

How can I cause the model posted back to the controller to be fully populated, including whatever the webgrid-generated table looks like now, just like fields are?

I see several other questions like this for webgrid on the forum, but none with an answer.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

沉鱼一梦 2024-12-26 05:57:34

我想您来自 WebForms 世界。这在 MVC 中是不同的。在这里,您回到了普通的旧 html 及其输入字段。没有视图状态来保存您的行。检查此链接:http://haacked.com /archive/2008/10/23/model-binding-to-a-list.aspx

基本上,每行都需要有连续的索引(或 ID)。

I suppose you are comming from WebForms world. Well this is different in MVC. Here you are back to plain old html and its input fields. No viewstate to hold your rows. Check this link: http://haacked.com/archive/2008/10/23/model-binding-to-a-list.aspx.

Basically you need have consecutive index (or ID) for each row.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文