我正在用我的代码做一些非常糟糕的事情。我将所有数据发布到实际页面,并将其放入html输入:
private void GetPostedForm()
{
System.Text.StringBuilder displayValues = new System.Text.StringBuilder();
System.Collections.Specialized.NameValueCollection postedValues = Request.Form;
for (int i = 0; i < postedValues.AllKeys.Length; i++)
{
String nextKey = postedValues.AllKeys[i];
if (nextKey.Substring( 0, 2 ) != "__")
{
displayValues.Append( "<input type='hidden' name='" + nextKey + "' value='" + postedValues[i] + "'/>" );
}
}
hiddensPost.InnerHtml = displayValues.ToString();
}但是这个页面中的html输入对我来说是无用的。我把一个页面放在两个较老的页面之间("A“发送表单给"B")。现在我需要将"A“发送到"X”,然后发送到"B“。
问题是:如何才能将请求的表单放入实际的表单中并发送到下一页,而不会在HTML中弄得一团糟?
发布于 2012-04-04 04:13:51
你可以把你的步骤(A,X,B)和它的可视输入,放到单独的asp面板中(pnlA,pnlX,pnlB)
然后简单地切换面板的可见性,你的want.the ViewState将在哪个状态下为你做这件事(将控件状态存储到表单中的一个隐藏字段中,以便通过输入再次发布)
因此,您可以使用一个html表单(著名的asp.net表单)发布用户输入的数据3次
另一种解决方案是asp.net向导控件here
发布于 2012-04-04 04:24:51
如果可以,只需将方法更改为GET并在页面之间传递QueryString即可。
https://stackoverflow.com/questions/10000331
复制相似问题