4

我正在使用jQuery Address在 ajax 站点中执行深度链接。

我有多个这样的论点:/SomeController/SomeAction#/586?e=5808&tab=#First

Q1:如何只更改“tab”参数?
当我这样做时...

$("#tabs").bind("tabsselect", function(event, ui) {
    $.address.parameter("tab", ui.tab.hash);
}

..结果是:/SomeController/SomeAction#/586?e=5808&tab=#First#Third
而不是期望的:/SomeController/SomeAction#/586?e=5808&tab=#Third

在上述事件中,url 哈希中的其他参数应该被认为是未知的,并且必须保持原样。

Q2:如何从 url 哈希中删除参数?
像上面一样,但如果我想完全删除 tab 参数。

谢谢!

4

2 回答 2

1

您提供的链接有一个tabs示例

http://www.asual.com/jquery/address/samples/tabs/#Overview

您可以使用 firebug 窥探代码。看起来很干净

于 2011-07-11T21:42:18.917 回答
0

我知道这是一个非常古老的问题,但我认为我仍然可以回答。

您必须首先将参数设置为null以将其删除,然后分配新值:

$.address.parameter('tab', null) 
$.address.parameter('tab', ui.tab.hash)
于 2013-11-21T11:42:57.967 回答