Javascript: URL, содержащий случайное число - PullRequest
7 голосов
/ 12 января 2011

Друг связывает мою страницу со своего сайта.Поскольку мне нужно, чтобы пользователи избегали кэширования при посещении моей страницы, я хочу, чтобы URL имел такую ​​форму:

http://www.mypage.com/index.php?456646556

Где 456646556 - это случайное число.

Как мойу друга нет установленного php, как я могу построить ссылку со случайным числом, используя Javascript?

Также мой друг попросил меня дать ему только URL, без дополнительных функций, так как его страница уже загружена с ними,Можно ли это сделать?

Большое спасибо

Ответы [ 4 ]

15 голосов
/ 12 января 2011

Я бы добавил параметр, но вы можете пропустить его при необходимости:

var url = "http://www.mypage.com/index.php?rnd="+Math.random()

или

var url = "http://www.mypage.com/index.php?rnd="+new Date().getTime()

Ссылка:

<a href="http://www.mypage.com/index.php?rnd=1" onClick="this.href=this.href.split('?')[0]+'?rnd='+new Date().getTime()">Mostly random</a>

Обратите внимание , что если у вас есть несколько назначений - например, в цикле, вам нужно добавить в getTime, так как итерация цикла быстрее миллисекунды:

var rnd = new Date().getTime();
for (var i=0;i<links.length;i++) {
   links[i].href = "http://www.mypage.com/index.php?rnd="+(rnd+i);
}
2 голосов
/ 12 января 2011
<a href="http://www.mypage.com/index.php?" onclick="this.href+=new Date().getTime();return true;">link</a>
2 голосов
/ 12 января 2011
var lower = 0;
var upper = 100000000;
var url = "http://www.mypage.com/index.php?"+(Math.floor(Math.random()*(upper-lower))+lower)

генерирует случайный X от 0 (нижний) до 100000000 (верхний), вы можете установить желаемые границы;)

0 голосов
/ 12 января 2011

Использование Math.random () :

 // navigate to the new page and append a random number at the end of the url
 window.location.href = newUrl + '?' Math.random();

Осторожно, вы могли бы получить один и тот же выход дважды от Math.random, после всего, что это случайно.

...