目前的表格是here。它不完整,只有几个选项可以使用。
选择“Image CD”,然后选择任何分辨率,然后单击“添加到订单”。订单将记录在服务器端,但在客户端,我需要将产品下拉菜单重置为“{select}”,以便用户知道他们需要选择其他产品。这与子选择消失的想法是一致的。
我不知道我是否应该使用ASP回发或标准表单提交,并且当用户向订单添加项目时,大多数字段都需要重置。
答案 0 :(得分:2)
在表单上的页面加载事件中,您需要添加类似于此的内容:
if (IsPostBack)
{
//Proccess the order here
ProductOption.SelectedIndex = 0;
}
这将允许您处理订单,但随后从订单表单开始。
答案 1 :(得分:2)
最简单的方法是一个递归函数,用于控制控件类型
private void ResetControls( Control control )
{
if ( control == null)
return;
var textbox = control As TextBox;
if ( textbox != null )
textbox.Text = string.Empty;
var dropdownlist = control as DropDownList;
if ( dropdownlist != null )
dropdownlist.SelectedIndex = 0; // or -1
...
foreach( var childControl in controlControls )
ResetControls( childControl );
}
您可以通过传递this
在Load事件中调用此函数。 (假设您想要重置多个控件或一小组控件)。
答案 2 :(得分:2)
我使用Response.Redirect(Request.RawUrl)
方法从服务器端重置表单数据。
一点解释:这是PRG design pattern
用于帮助避免某些重复 表单提交并允许用户代理 用更直观的表现 书签和刷新按钮。
此问题的解决方法:
例如,必要的数据可以存储在Session
中。这意味着我们使用第一个POST获取数据,将其放入存储,执行重定向并将其恢复。