Asp.net 使用母版页进行跨页发布
我为自己的特殊需要找到了解决办法,但我想我还是会问这个问题 假设我有一个典型的带有母版页的数据输入web项目,而不是使用会话变量和Response.Redirect或Server.Transfer来将数据输入过程中的用户重定向到下一步,我宁愿使用跨页面发布 我尝试以这种方式设置我的一个网站,按钮如下:Asp.net 使用母版页进行跨页发布,asp.net,Asp.net,我为自己的特殊需要找到了解决办法,但我想我还是会问这个问题 假设我有一个典型的带有母版页的数据输入web项目,而不是使用会话变量和Response.Redirect或Server.Transfer来将数据输入过程中的用户重定向到下一步,我宁愿使用跨页面发布 我尝试以这种方式设置我的一个网站,按钮如下: <asp:Button ID="next" text="next" runat="server" PostBackUrl="EnterInfo.aspx" /> ),在我看来,这似乎
<asp:Button ID="next" text="next" runat="server" PostBackUrl="EnterInfo.aspx" />
),在我看来,这似乎明确表示跨页面发布实际上是将表单发布到另一个页面
也许我把这误解为改变了表单的动作,但是不管怎样,当我点击我修改过的按钮时,我的源表单不会在目标上的任何地方进行post调用——它只是回发到当前页面。我认为使用PostBackUrl
属性不会改变标记中表单的操作,因为可能有许多其他控件只是在执行正常的回发。我设想,当按下此特定按钮时,某些javascript用于更改表单的操作。您需要在数据来源的第二页上放置声明
所以你有:
PostBackUrl="EnterInfo.aspx"
在EnterInfo.aspx上,您可以声明可以从何处获取信息
<%@ PreviousPageType VirtualPath="~/SelectedUser.aspx" %>
PostBackUrl不会更改表单url
一些参考资料。
Ps
起初,我认为您只需键入在render中看到的内容,但如果不是@Mystere所指出的情况,您需要在asp.net表单中运行它。首先,正如Graham所说。。PostBackUrl不会更改回发操作。其次,您只能在启用asp.net的表单上使用PostBackUrl,这意味着表单必须具有runat=“server”是的,您是对的——我粘贴的表单标记就是呈现的标记。
<%@ PreviousPageType VirtualPath="~/SelectedUser.aspx" %>
if (Page.PreviousPage != null)
{
if(Page.PreviousPage.IsCrossPagePostBack == true)
{
GetTheClass = PreviousPage.MyDataClass;
}
}