2009-05-01 16 views
2

ハイパーリンクがクリックされたときに自動的に新しいウィンドウを開くようにIISまたはWebアプリケーションを設定する方法はありますか?私の問題はそれほど些細なものではなく、私に説明させてください...あなたはアンカータグでjavascriptまたはtarget = "_ blank"を使うことができますが、いつアンカータグがページ...*任意のURLからaspxページの新しいウィンドウを開く

理由は、ユーザーがURLを入力する(許可されている)と必ずしも知られていない、または前に入力されたため、方法がない教えてください。

答えはいいえ、私はちょうど投稿/エントリーが保存されているときにURLを分析し、これを行うために変換しなければならないと思います...どんなヒントもありがとう!

本当に すべてリンクが行います。もちろん、
+0

それとも私がURLのページに書き込まれているHTMLコンテンツを解析し、適切なコードを追加することができたとします。私はそれが同じくらい簡単なはずのjQueryを、お勧めしたいですこれを既に試してきた人でなければなりません。これを解決するためのすてきなパターンを発見しました。 – bbqchickenrobot

答えて

10
<html> 
<head> 
<base target='_blank'> <!-- Here's the interesting bit --> 
</head> 
<body> 
<p><a href='http://google.com'>New window!</a></p> 
</body> 
</html> 

- あなたはリンクが規則の例外になりたい場合は、現在のウィンドウで開くには、次の操作を行います。

<p><a href='http://google.com' target='_self'>Not new window!</a></p> 
+1

+! - ベースタグについては知りませんでした。 http://www.w3schools.com/TAGS/tag_base.asp –

+1

+1、ベースタグについて知っていましたが、ターゲット属性を追加することはできませんでした。ニース。 –

+0

クール。私は自分のページ(つまり、urlrewritingなど)でプログラムで作成したすべてのリンクについてよく知っているので、それらにtarget = "_ self"タグを簡単に追加できます!簡単なソリューションをありがとう - 完全に答えているHTMLを考えていない笑。 – bbqchickenrobot

1

ますReleaseRequestStateイベントをキャッチするHTTPモジュールを作成できます。次に、HttpResponseにフィルターを添付します。フィルタは、<a>タグを検索し、target='_blank'をまだ持っていないタグに追加することができます。

+0

クールなアイデアは、サーバーに処理を追加するが、すべてのレプリケートの皆さんのおかげで、それを完了するための3番目の方法を見てうれしい、あなたはすべてロック! – bbqchickenrobot

4

IISはこれと関係なく、すべてのリンクを書き換えるフィルタを作成しません。そこに...うーん...

$(function() { 
    $('A').attr('target', '_blank'); 
}); 
+0

あまりにも素晴らしいソリューション! javascriptを介してクライアント側への処理を設定するための気がする!私はタグもこれを行うと思います。 – bbqchickenrobot

関連する問題