【问题标题】:Read hidden field values from another page从另一个页面读取隐藏字段值
【发布时间】:2015-01-31 09:37:46
【问题描述】:

我正在使用 ASP.net 开发一个网站。

在我的主页中,我有 14 个树视图控件。它们被放置在 Jquery 选项卡下。因此,当用户单击一个选项卡时,它只会出现一个树视图。因此,在树节点更改事件中,目前我正在做的是将查询字符串中的值传递到另一个页面。此查询字符串没有任何敏感数据。我必须传递选定的选项卡 ID 和选定的树节点 ID。

Response.Redirect(String.Format("~/Display.aspx?tab=1&type={0}",treeview1.SelectedValue), true);

但是你知道 URL 是丑陋的。我现在不想使用友好 URL 的东西。 所以我所做的就是在我的主页中放置 2 个隐藏字段值,并在单击树节点时设置它们。

然后从源页面我使用此代码来访问它。

 if(Page.PreviousPage!=null)
                {
                    string tab= Page.PreviousPage.FindControl("hftab").UniqueID;
                    string Type= Page.PreviousPage.FindControl("hfType").UniqueID;
                }

但 Page.PreviousPage 总是返回 NULL。那么如何在不使用会话和查询字符串的情况下解决这个问题。我只想在幕后传递两个非敏感数据。

如果这是关于跨页面回发的事情如何在节点更改事件中执行此跨页面回发?是否可以进行跨页面回帖以仅获取我需要的 2 个值?

【问题讨论】:

    标签: asp.net hidden-field


    【解决方案1】:

    您尝试的方法仅适用于“跨页发布”机制。当您设置像按钮这样的服务器控件的 PostbackUrl 属性,并在目标页面上设置 Page 指令的 PreviousPage 属性时;那么只有你会得到 Page.PreviousPage 值。

    这里有一些参考: 1.http://www.codeproject.com/Tips/604553/Postback-and-Cross-Page-Posting-in-ASP-NET 2.http://www.aspdotnet-suresh.com/2010/05/cross-page-post-backing-in-net.html

    【讨论】:

    • 如何在节点更改事件中执行此跨页回发?是否可以进行跨页面回帖以仅获取我需要的 2 个值?
    • 如果您不打算在查询字符串中公开 ID,那么为什么不使用会话变量并删除,只要您在第二页上收到它。
    猜你喜欢
    • 2012-11-03
    • 1970-01-01
    • 2010-11-30
    • 2012-02-09
    • 1970-01-01
    • 2011-01-26
    • 2013-06-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多