【发布时间】:2012-07-13 11:29:03
【问题描述】:
我正在研究如何实现根据数据输入模式更改的数据输入表单的正确方法。情况如下:
考虑一个父子表单,其中包含员工列表和显示员工详细信息的部分。
单击列表中的员工编号将导致员工详细信息使用 HTML 表格显示在屏幕的右侧。
员工详细信息将首先显示为只读表单。例如,出生国家/地区字段将显示为“SPAN”而不是 SELECT 元素。
当用户单击“编辑”按钮时,“出生国家/地区”字段将更改为 SELECT 元素,其中包含可供选择的国家/地区列表。
这是我想使用 jQuery 实现的带有 ItemTemplate、EditItemTemplate 和 InsertItemTemplate 的 ASP.NET FormView 的行为。
本质上,数据输入模式将通过单击按钮来切换。我想我会通过对根据数据输入模式包含不同 DOM 元素的字段使用 CSS 规则来解决这个要求。正如我之前提到的,如果模式是只读的,则显示 SPAN,否则显示下拉元素或文本区域。使用 jQuery,我可以根据数据输入模式在不同的类之间切换()。当然,这需要对同一字段使用两种不同类型的元素。
这是最好的方法吗?我很想听听专家的意见。谢谢。
【问题讨论】:
-
这两个听起来都是错误的,但这可能取决于您的要求和用例。你有这些吗?
-
嗨,霍根。感谢您的回复。我不想让这件事变得过于复杂。我的目标是拥有一个干净整洁的数据输入屏幕。如果信息是只读的,那么在禁用的下拉列表中显示数据是没有意义的。我所追求的是通过 jQuery 和/或 CSS 来驱动这种机制的机制。例如,如果数据输入模式为“插入”,则在“员工 ID”字段中添加(新建)标签。数据输入的状态在应用程序中很重要。我希望能够去 'If fvwMyForm.DefaultMode = FormViewMode.ReadOnly' then ...就像在 ASP.net 中所做的那样。
-
如果您的目标是使用 jQuery,那么您应该使用 MVC 而不是表单。 jQuery 对您所描述的 ASP 表单交互没有帮助。另请参阅我的答案的编辑。
标签: jquery asp.net forms data-entry