在MVC 2中保留Tab控件数据
我有多个选项卡,我为每个选项卡调用一个 ascx 文件,每个 ascx 文件都有一些控制和提交按钮。现在,当我在第一个选项卡中输入数据并切换到第二个选项卡并输入一些数据并单击提交时,第一个选项卡数据也变空。
我想保留第一个选项卡的数据,或者当我在第一个选项卡上输入数据并单击“提交”时,其他选项卡中的数据也必须存在。
任何人都可以了解如何解决这个问题。
I have a multiple tabs and I am calling an ascx file for each tab, I have some control and submit button for each ascx file. Now I when ever I enter the data in first tab and switch to second tab and enter some data and click on submit then the first tab data is also getting empty.
I want to keep the data for the first tab or when I enter data on the firrst tab and click submit then what ever the data is there in other tabs must be there.
Can any one some source how to resolve this problem.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
MVC2 没有像 web.forms 那样的“视图状态”。这意味着如果它以某种方式不在屏幕上,您必须将其存储在会话中以保留它。我不建议使用会话,因为在某些情况下你可能会陷入困境,但对于某些事情来说可能是合适的。
如果您不想使用会话,您基本上还有 2 个选项:
1 - 在一页上显示所有选项卡,然后使用 jquery 向客户端显示/隐藏它们
例如:
然后使用 JQuery 或 javascript 在加载时隐藏它们,然后单击时显示它们。例如:
或
2 - 将您想要保留的任何数据放入表单上的隐藏输入中。如果您只有一个小模型,这可能是最简单的方法。
注意:此规则是 HTML 规则,而不是 MVC 规则。 Webforms 只是“伪造”ViewState 的持久性,而 MVC 对于如何处理 http 更加诚实。
MVC2 has no "viewstate" like web.forms does. That means if it's not on the screen in some way, you must store it in session to persist it. I wouldn't recomend using session as you can tie youreself in knots in some situations, but can be appropriate for some things.
You basically have 2 options left if you don't want to use session:
1 - Show your tabs all on 1 page and then show/hide them using jquery to the client
For example:
Then use JQuery or javascript to hide them on load and show them on click. For example:
OR
2 - Put any data you want to persist in hidden inputs on your form. If you only have a small model, this can be the easiest approach.
NOTE: This rule is a HTML rule, not an MVC rule. Webforms just "fakes" persistance with ViewState and MVC is more honest about how you deal with http.