0

所以我正在尝试创建一个链接,其中 url 的最后一部分是由 JavaScript 生成的随机字符串。我一直在使用的 Javascript 函数是这样的:

 function randomString(length, chars) {
    var result = '';
    for (var i = length; i > 0; --i) result += chars[Math.round(Math.random() * (chars.length - 1))];
    return result;
}
document.write(randomString(6, '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'));

如何在 url 中使用此字符串,例如:<a href="http://mypage.com/random-generated-string">?

4

2 回答 2

1

像这样的东西:

var link = document.getElementById("id_of_anchor");
link.href = "http://mypage.com/" + randomString(6, '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ');
于 2013-09-09T17:50:30.447 回答
0

纯 JavaScript:

function randomizeHref()
{
    var e = window.event;
    e.preventDefault();

    var url = e.target.href;
    url += randomString(6, '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ');

    location.replace(url);

    return false;
}

然后在您的 HTML 中:

<a href="http://www.mypage.com/" onclick="randomizeHref();">Click here</a>

使用 jQuery:

function randomizeHref(e)
{
    e.preventDefault();

    var url = this.href;
    url += randomString(6, '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ');

    location.replace(url);

    return false;
}

$(function()
{
    $('a[rel=randomizeHref]').click(randomizeHref);
});

然后:

<a href="http://www.mypage.com/" rel="randomizeHref">Click here</a>
于 2013-09-09T17:54:29.310 回答