1

我在一些调查网站上看到了这一点。他们在客户端使用什么 C# 代码来保持 URL 相同,但是当单击“下一步”按钮时,保持相同的aspx页面

  1. 没有任何查询字符串;
  2. 连网址中的一个字符都没有任何变化;和
  3. 网格、数据、内容、问题不断变化?

谁能给出一个代码示例如何实现这一目标?

我的主要查询是如何在代码隐藏中完成更改页面数据并维护相同的 url。

4

4 回答 4

3

没有什么比在服务器端维护的会话更简单的了。在会话中存储一个“当前问题编号”,在每次成功的回发时增加它,然后你就会得到你想要的。

另一种可能性 - 包含“当前问题编号”的 cookie。

当然,cookie 和 session 在查询字符串中都是不可见的。

于 2012-08-19T18:51:51.327 回答
1

“更改页面数据并保持相同的 url。” 答案是Server.Transfer。此方法将保留 url。

于 2012-08-19T18:58:02.523 回答
1

Next按钮可以使用HTTP POST 方法提交表单。表单数据可能包含会话、问题和响应数据。该站点使用它来构建新的响应。与 GET 不同,POST 不会将数据合并到 URL 中。

于 2012-08-19T18:58:40.637 回答
0

开发人员通常会使用 AJAX 来完成此任务。它背后的基本前提是只有页面的特定部分(例如网格或内容区域)会进行服务器调用并检索结果(使用 Javascript)。达到的效果是没有完整的回传,这就是为什么您看不到 URL 或参数发生变化的原因。

可以使用 jQuery、纯 Javascript 或 Microsoft 的UpdatePanel来做到这一点。

oleksii 的评论也有一些很好的链接:

这就是AJAX的魔力。为此有很多 JQuery 插件,例如这个带有现场演示的插件。您还可以使用 JQuery GetPost或任何其他使用 XmlHttpRequest 对象的包装器轻松对其进行编程。

于 2012-08-20T15:12:33.147 回答