2009-11-03 15 views
0

我的客户端有一个网站,当前对特定事件(点击,加载等)发出请求。该网站运行良好,除了他在使用Google Analytics获取网站统计信息方面存在问题外,原因是,因为该网站从未重新指向其他网页,因此它们都位于同一网页中,而且无论如何事件在网页加载(无论是视频,表格等)都在同一网址将事件追踪查询字符串(C#)

www.somewebsite.com/default.aspx 

我想要实现的是对特定事件下显示的URL更改为

www.somewebsite.com/default.aspx?type=abc&id=999 

我该如何做到这一点。什么是最简单的方法来做到这一点?请指教。整个网站都是用C#编写的。

很多谢谢。

+1

您可能想要在url:default.aspx#type = bc&id = 999之后使用锚点(hash)。 – 2009-11-03 04:00:06

回答

1

此事件是发生在服务器还是客户端?

如果它在服务器上,则可以调用Response.Redirect并将新的查询字符串参数添加到当前url。

如果它在客户端(Javascript)上,则可以设置location属性。

+0

是的,我也试过,但是当我做response.redirect时,它再次加载主页,因为基本上我所做的全部都是基于事件隐藏和显示元素,如果我做了response.redirect,它会重新加载首页。 :( – Mponnada 2009-11-03 04:08:57

1

如果你想保留你的页面的状态,尝试添加你的查询字符串参数到表单的参数在Javascript中的action

或者,正如jeffamaphone建议的那样,您可以通过设置location.hash来更改散列(#符号后的部分),而不回发到服务器。

1

其实,你应该将一些元素,以不同的网页...这是基于什么对你说:

因为基本上所有我做的是 隐藏和显示单元基于 事件,如果我做了response.redirect, 它将重新加载首页。

如果我理解正确,用户永远不会重定向到不同的页面,您只是隐藏/取消隐藏基于查询字符串的default.aspx元素...正确吗?最简单的解决方案是将这些内容分割成不同的aspx页面。