1

我有一个 mybb 板,我提供了一个特定的链接,看起来像这样

<a href="/member.php?action=login&do=switch">Klick</a>

该链接更改会话并重新加载页面,因此我需要为会话中的更改执行它。但是之后我想将用户重定向到另一个页面,例如“/private.php”

我已经尝试过结合 href 和 onclick 的不同版本,但它总是将我带到 href 中所述的页面,而忽略了 onclick 位。所以我的代码看起来有点像这样:

<a href='/member.php?action=login&amp;do=switch&amp;uid={$others['uid']}' onclick='window.location.href({$mybb->settings['bburl']}/private.php);'>Link</a>";

我必须说我在 javascript 方面几乎是个菜鸟,所以我需要一些帮助。我想用 javascript 或 php 解决这个问题,所以请不要使用元标记。

4

1 回答 1

1

您有 2 个选项:

  • /member.php?action=login&do=switch中,返回一个重定向响应(http 301)到private.php,浏览器收到响应后会自动重定向。
  • 使用 ajax 调用链接/member.php?action=login&do=switch,并在 ajax 的回调中重定向到private.phpusing window.location.href = private.php

使用 jquery 的示例代码:

$("a").click(function(){
  var href = $(this).attr("href"); //href here is "/member.php?action=login&do=switch"
  $.ajax(
  {
     url:href,
     ...
  }).done(function(){
   window.location.href = "private.php"
  });
  return false; //prevent default action of links.
});
于 2013-08-17T13:14:05.477 回答