0

私はフォーラムを管理しており、ランダムなユーザー プロファイル ページにアクセスするリンクを自分のサイトに配置したいと考えていました。

プロフィール ページにアクセスするための URL 形式がhttp://www.mypage.com/#m=Profile&user_id=XXXXX (XXXXX は数字) であると仮定して、次の HTML コードを入力してみました。

<a target="_blank" href="http://www.mypage.com/#m=Profile&user_id=" onclick="this.href=this.href.split('?')[0]+(Math.floor(Math.random()*(75800000-59438709))+59438709)">Open a random profile. Click here!</a>

このリンクをクリックすると、ランダム化されたプロファイルにアクセスします。しかし、問題は、そのリンクをもう一度クリックすると、以前のランダム化された番号と並置された新しいランダム化された ID 番号を持つ URL にアクセスすることです。

つまり、最初にリンクをクリックすると、URL mypage.com/#m=Profile&user_id=とランダム化された番号 (たとえば 4542) にアクセスしますが、2 回目の試行では URL にアクセスします。mypage.com/#m=Profile&user_id=4542プラス別の乱数。

もう一度クリックして正しいリンクを取得する前に更新しないようにするにはどうすればよいですか?

事前に感謝し、私の下手な英語で申し訳ありません

4

3 に答える 3

2

または、次のようにすることもできます。

<a target="_blank"
    href="http://www.mypage.com/#m=Profile&user_id="
    onclick="this.href='#m=Profile&user_id='+(Math.floor(Math.random()*(75800000-59438709))+59438709)">Open a random profile. Click here!</a>

これにより、ハッシュされた部分のみへのリンクが作成され、常に適切な ID が追加されます。

于 2012-05-31T20:13:27.827 に答える
1

さて、あなたは /#attr1&attr2 を持っています。

しかし、分割方法では、「?」で分割しています。使ってみて

<a target="_blank" href="http://www.mypage.com/#m=Profile&user_id=" onclick="this.href=this.href.split('#')[0]+(Math.floor(Math.random()*(75800000-59438709))+59438709)">Open a random profile. Click here!</a>

上記は次のようになります: http://www.mypage.com/XXXXXここで、XXXXX は乱数です。

http://www.mypage.com/#m=Profile&user_id=XXXXX」形式の場合、次を使用します。

<a target="_blank" href="http://www.mypage.com/#m=Profile&user_id=" onclick="this.href=this.href.split('#')[0]+'#m=Profile&user_id='+(Math.floor(Math.random()*(75800000-59438709))+59438709)">Open a random profile. Click here!</a>
于 2012-05-31T20:08:47.207 に答える
0

& を使用して分割できます

<a target="_blank" href="http://www.mypage.com/#m=Profile&user_id=" onclick="this.href=this.href.split('&')[0]+'&user_id='+(Math.floor(Math.random()*(75800000-59438709))+59438709)">Open a random profile. Click here!</a>
于 2012-05-31T20:14:38.393 に答える