質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

ASP

ASP(Active Server Pages) あるいはClassic ASP (ASP Classic)は、マイクロソフト社開発した動的なウェブページ製作に利用可能なサーバー側のスプリクトエンジンです。

Q&A

解決済

3回答

4148閲覧

ページ内ジャンプが正しく動作しなくて困ってます。。

sekiken

総合スコア7

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

ASP

ASP(Active Server Pages) あるいはClassic ASP (ASP Classic)は、マイクロソフト社開発した動的なウェブページ製作に利用可能なサーバー側のスプリクトエンジンです。

0グッド

0クリップ

投稿2016/12/13 02:39

###前提・実現したいこと
ページ内ジャンプが正しく動作しなくて困ってます。。
Response.Redirect "AAA.asp#bbb" と実行すると、

<tr ID = "bbb" NAME = "bbb"> のところにジャンプしてくれない。 IISの設定で何かしないといけないのでしょうか?

###試したこと
・URL(AAA.asp#bbb)を直接アドレスバーのところに入力して、
実行すると、正しくbbbのところに飛びます。
・旧サーバWindowServer2003 だと正しく動作します。
新サーバWindowsServer2012 R2 だと、動きません。

###補足情報(言語/FW/ツール等のバージョンなど)
・ブラウザ:IE11
・表示するWebサイトはローカルイントラネットです。
・クラシックASP
・Webサーバ:WindowsServer2012 R2

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

coco_bauer

2016/12/13 02:45

新・旧サーバ、それぞれの構成や設定はどうなっているのですか? 一方で動作し、もう一方で動作しないということは何らかの違いがあると思われるのですが。
sekiken

2016/12/13 03:09

そうですよね。きっとそうだと思うんですけど、WindowsServer2012とWindowsServer2003のIISの画面が全然見た目が違うので、設定の違いを調べるのが難しくて、質問して楽に解決しようと思ったんです。。。すみません。
guest

回答3

0

<div id="bbb"></div> でどうでしょうか

投稿2016/12/14 00:52

hyksm

総合スコア174

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2016/12/14 01:40

横から失礼します。 質問者さんによると「URL(AAA.asp#bbb)を直接アドレスバーのところに入力して、実行すると、正しくbbbのところに飛びます」ということですから tr 要素の id, name 属性で問題ないはずです。実際、自分も試してみましたが tr 要素の id, name 属性に指定して期待通りその位置にスクロールされます。
hyksm

2016/12/14 02:25

確かに正しく飛ぶという事でしたね。失礼しました ブラウザは同じだけどサーバが違うので何か設定が関係してるんじゃないかという趣旨ですね
guest

0

ベストアンサー

クラシック ASP はほとんど何も知らない自分がレスするのもなんですが・・・

フラグメントがある場合にブラウザが Web サーバーに要求をかける仕組みですが、質問者さんが行った、

URL(AAA.asp#bbb)を直接アドレスバーのところに入力して、実行すると、正しくbbbのところに飛びます。

というケースでは、ブラウザは Web サーバーには AAA.asp を GET 要求します。#bbb はブラウザが Web サーバーに送信する要求には含まれません。ブラウザでその情報を保持しています。

Web サーバーから AAA.asp 要求に対する応答がブラウザに返ってくると、ブラウザはその画面を表示しフラグメントの位置 #bbb にスクロールするという動作になります。

Response.Redirect "AAA.asp#bbb" とした場合、Web サーバーからリダイレクト指示(HTTP/1.1 302 Found)が返ってきて、応答ヘッダーに含まれる Location が AAA.asp#bbb となっていれば、そのリダイレクト指示を受けたブラウザは上記の動作をするはずです。

なので、疑わしいのは、応答ヘッダーに含まれる Location が AAA.asp となっているのではないかということです。

キャプチャツールを使って、要求/応答(特に Location ヘッダ)を調べてみることをお勧めします。IE の F12 開発者ツールでも調べられますが、Fiddler が使いやすいのでお勧めです。

Fiddler のお勧め
http://surferonwww.info/BlogEngine/post/2011/05/25/Recommendation-of-Fiddler.aspx

投稿2016/12/13 05:05

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sekiken

2016/12/13 11:42

ご回答ありがとうございます。#bbb が内部ではそういう風に動くのですね。 内部的な事は理解出来ていないので、Location ヘッダが何なのかから調べないとですけど、調べてみます。
sekiken

2016/12/15 12:14

SurferOnWwwwさんに教えて頂いた方法でLocation 部分を確認してみたところ、正しくAAA.asp#bbb となっていました。また、Fiddler を起動した状態だと正しくジャンプし、起動していない状態だとジャンプしないという不思議なことが起きることも分かりました。また、IEの開発ツールだと、開発ツールを起動していてもジャンプしませんでした。いろいろ調べたら、正しく動くプログラムもあることに気づいて、その違いを調べてみたら、aspのプログラム内のResponse.Flushの記述を削除したところ正しくジャンプされるようになりました。ありがとうございます。 けど、古いサーバだとResponse.Flushがあっても動作するので、根本的原因までは分からない状態です。とりあえず、動くようになったので問題はないですが、Response.FlushのあるなしでIISのバージョン違い(設定違い)によってこのようなことが起きる要因としてどんなことが考えられるか分かれば教えて頂きたく思っています。
退会済みユーザー

退会済みユーザー

2016/12/15 15:47

クラシック ASP は分かりませんが ASP.NET の場合 Response.Flash をすると chunked エンコーディングになります。クラシック ASP も同様で、それが影響しているのかもしれませんね。
sekiken

2016/12/16 04:04

ありがとうございます。chunked エンコーディングになるのですね。調べてみようと思います。 細かいところまでありがとうございました。
guest

0

アンカーは aタグが仕様です。
trでも動くブラウザもあるのでしょうけれど。
もっというと、nameはhrml5では非推奨で、idを使ったほうがいいでしょう。

投稿2016/12/13 02:47

katsuya141

総合スコア367

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sekiken

2016/12/13 03:29

ご回答ありがとうございます。 aタグ、id で試しましたが、ダメでした。。。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問