页面加载/单击后随机重定向

时间:2014-02-24 00:33:00

标签: asp.net razor-2

我正在使用ASP.NET Razor v2网站,现在我有一个链接可以帮助我将用户发送到一个随机网址,我将其作为列表,它看起来像这样;

@{
    List<string> UrlList = new List<string>();
UrlList.Add("http://example1.com/");
UrlList.Add("http://example2.com/");
UrlList.Add("http://example3.com/");
    Random r = new Random();
    int index = r.Next(UrlList.Count);
    string randomUrl = UrlList[index];
}

<a href="@randomUrl">A Random Link</a>

当我悬停“随机链接”时,我会看到列表中的一个链接。

有没有办法在加载页面后将用户重新修改为URL?

简而言之; 点击“随机链接” - &gt;加载另一个页面 - &gt;从列表中重新链接到链接。

1 个答案:

答案 0 :(得分:0)

看起来你需要在用户点击它时重新加载目标网址。所以你应该

<a id="aRand" target="_blank" href="http://www.google.com">A Random Link</a>

现在在你的javascript中,当用户点击链接时,获取随机数并从js数组中读取链接并更新点击的锚标记href属性。

$(function(){
  var itemArr=["http://a.com","http://b.com","http://c.com"];

  $("#aRand").click(function(e){

     var randomNum=getRandom(0,itemArr.length);   
     var targetUrl=itemArr[randomNum];
     $(this).attr("href",targetUrl);

  });

});

function getRandom(min, max) {
  return Math.floor(Math.random() * (max - min) + min);
}

您可以使用ajax请求从服务器操作方法获取数据,而不是对数组进行硬编码。