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

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

新規登録して質問してみよう
ただいま回答率
85.35%
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

XAML

XAML(Extensible Application Markup Language)はWPF、Silverlight、Windows PhoneそしてWindows Store appsでユーザーインターフェースを定義するために使われるXML言語です。

Q&A

解決済

2回答

2356閲覧

xamlでクエリパラメータが無視される

kwmr8416

総合スコア6

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

XAML

XAML(Extensible Application Markup Language)はWPF、Silverlight、Windows PhoneそしてWindows Store appsでユーザーインターフェースを定義するために使われるXML言語です。

0グッド

0クリップ

投稿2021/12/30 01:48

編集2021/12/31 06:22

状況及び実現したいこと

ローカルアプリから以下のソースで、ローカルにあるHTMLファイルを既定のアプリで設定したブラウザから表示させることはできますが、クエリパラメータで指定したページが表示されず、トップページが表示されます。

クエリパラメータで指定したページを、既定のアプリで設定したブラウザに表示させたいです。

ちなみにIEでは専用のクラスがあり、そのメソッドからクエリパラメータで指定したページを表示できます。

MainWindow.xaml.cs

//ローカルのHTMLファイルからクエリパラメータで指定したページを、既定のアプリで指定したブラウザから表示させる処理 //ProcessStartInfoオブジェクトを作成する System.Diagnostics.ProcessStartInfo psi = new System.Diagnostics.ProcessStartInfo(); //起動するファイルのパスを指定する psi.FileName = "file:/c:/temp/doc.html?ページid"; //アプリケーションを起動する System.Diagnostics.Process.Start(psi);

doc.html

<!DOCTYPE html> <html lang="ja"> <head> <meta charset=”utf-8″> <title>クエリパラメータが無視される</title> </head> <body> <h1>検証環境</h1> <p> <a href="file:///c:/temp/doc.html?ページid">リンク</a> </p> </body> </html>

上記ソースコードで、既定のアプリで指定したブラウザからローカルにあるHTMLファイルを表示させますが、クエリパラメータ(?)以降の文字列が無視され、表示させたいページが表示されません。結果表示されるのは先頭ページになります。

試したこと

1つ目
psi.FileNameではなくpsi.Argumentsにパスを指定する

2つ目
Uriクラスにパスを設定し、このUriクラスからProcess.Startまたは、ProcessStartInfoにパスを渡す

ご質問は以上です。
業務アプリで自宅に開発環境がないため、検証できませんが、ご回答のほどよろしくお願いいたします。

追記
操作誤りで同じ質問を何度もしてしまいました。
こちらで回答受付いたします。
申し訳ございません。

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

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

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

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

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

1T2R3M4

2021/12/30 01:50

荒らして楽しいですか。
Zuishin

2021/12/30 01:51

何回同じ質問するんだよ。
Zuishin

2021/12/30 01:54

同じ事何度も聞くなよ。
Zuishin

2021/12/30 01:54

三回も同じこと書くなよ。
m.ts10806

2021/12/30 01:55

質問は編集できるので何度も投稿しなおす必要はありません。 1つだけ残してあとは削除依頼出してください
kwmr8416

2021/12/30 02:21 編集

大変失礼しました。 質問の仕方の質問からするべきでした。 これ以上は投稿しません。 ---------------------------------------------- 関係ありませんが、初めてスマホから質問しています。 UIが少し違うようです。
m.ts10806

2021/12/30 01:57

>質問の仕方の質問からするべきでした。 「質問するときのヒント」を読んできてください。
dodox86

2021/12/30 02:08

xamlは関係ないのではないでしょうか。また、スキーム名"file:"についてちゃんと理解した方がよいと思います。
kwmr8416

2021/12/30 02:14

file:スキームを省略すると、クエリパラメータが無視されます。 xamlについては確かに関係ないかもしれません。xaml→C#でとタイトル書くべきだったでしょうか? webアプリとフォーム系のアプリを分ける意図で書きました。
kwmr8416

2021/12/30 02:25

同じ質問は先ほど削除依頼出しました。 ご指摘ありがとうございました。 ご質問のほう受付させていただきます。
m.ts10806

2021/12/30 02:31

こちらの質問を残すのでしたら要件や追加情報を質問本文に追記してください
kwmr8416

2021/12/30 02:49

質問本文に追記いたしました。よろしくお願いします。
Zuishin

2021/12/30 03:25

> 業務アプリで自宅に開発環境がないため、検証できませんが、 検証環境を作りもせず丸投げして正月休みの間に解決しとけということか。
kwmr8416

2021/12/30 03:36

質問文の試したことにもありますが、それ以外の解決方法があればご教授い ただきたいです。有力な情報があれば検証の上、修正案として実装します。
Zuishin

2021/12/30 03:49

日本語がわからないのか? まず検証環境を作れ。 そうしたら質問自体がまちがっていることもわかる。
kwmr8416

2021/12/30 05:19

検証環境作りました。もしかしたら質問がうまく伝わっていなんでしょうか? 上記のコード例で、ブラウザに表示されるURLにはパスとして?以降はすべて省略されます。 業務アプリのHTMLの中身までは見ていませんが、IEの専用クラスによるHTMLの表示では上記のフルパスで対象ページが開きます。
Zuishin

2021/12/30 05:31

ウェブアプリかローカルアプリかすら書いてないのに通じるわけがない。 XAML は無関係。IE を前提としているなら論外。 > 結果表示されるのは先頭ページになります。 表示されるはずもない。アプリではなくデフォルトのブラウザでエラー表示されるはず。 検証環境を作ったのなら、その環境の前提を明記し、想定されるコードはエラーの出ないことを確かめて同じものをそのままコピペする。 質問者と回答者で同一の問題を共有できてはじめて質問が成立するが、この質問では全く共有できない。
kwmr8416

2021/12/30 05:37

今からローカルアプリの旨を質問文に追加します。 html表示されますよ。 ソースコード一緒です。 パスは概略してます。
Zuishin

2021/12/30 05:43

される「はず」の間違いだろう。環境構築して試してみればわかる。
kwmr8416

2021/12/30 05:48

今自宅の検証環境で確認しましたし、すでに現場でも十分に確認とってます。 ブラウザ起動の際にクエリパラメータ以降のパスが省略されるんです。
Zuishin

2021/12/30 06:10

file: はスキーマではなくドライブと認識されるので確認できるはずがない。
kwmr8416

2021/12/30 06:35 編集

質問文にあるパスのスキーム名の後に /忘れてました。 "file:c:/temp/doc.html?ページid"; → "file:/c:/temp/doc.html?ページid"; 何度も言ってますけど、このクエリパラメータ入りのフルパスで確認できます。 かりにfile:を省略(クエリパラメータ有無両方とも)してProcess.Startすると例外がスローされます。 訂正追記 file:を省略でクエリパラメータがなければ、htmlはProcess.Startで開きます。
Zuishin

2021/12/30 06:31

検証環境を作ったのなら、その環境の前提を明記し、想定されるコードはエラーの出ないことを確かめて同じものをそのままコピペする。 質問者と回答者で同一の問題を共有できてはじめて質問が成立するが、この質問では全く共有できない。
Zuishin

2021/12/30 06:36

そもそも file:// にクエリパラメータを与えてもサーバーが対応していないので無意味。 対応したファイルサーバーを立てるか、別のスキームを使う必要がある。 あるいは html を直接開くのではなく、開くためのアプリを用意する。 ここまでは一般論で、この質問特有の前提条件が全く明らかにされていないのが問題。 file:// にしたところで標準のブラウザが開くだけだから、何を標準にしているのかなども影響する。
kwmr8416

2021/12/30 06:52

現場で質問できる環境ではなく、わかりずらくて申し訳ありません。 既定のアプリから指定したブラウザを開きたく、おそらく標準はedgeです。 修正前はIEでexeとクエリパラメータ入りのパスを指定してブラウザを起動していますが、 この処理はIE専用のMicrosoftのクラスから処理しており、今回Processクラスで対応することになっていますが、Edgeでほかに対応策がありましたら、ご教授お願いいたします。
Zuishin

2021/12/30 06:59 編集

サーバーを作るのが一番簡単。 次に簡単なのがブラウザを作ること。 そうしないのであれば、「おそらく」ではなく Edge なら Edge と確定し、それを操作する仕組みを使う。 file:// でなくて良いのであれば既存のウェブサーバーが使える。
kwmr8416

2021/12/30 07:19

修正対象は既存システムで現在IEで起動している画面を既定のアプリで指定したブラウザ(おそらくedge)で開けるようにするというものです。 サーバやブラウザを構築するのは、経験がなく無理かと思いますが、参考にはさせていただきます。 fileスキームがないとクエリパラメータでページ指定できませんが、認識違ったらすいません。
退会済みユーザー

退会済みユーザー

2021/12/31 05:52 編集

> 上記ソースコードで、既定のアプリで指定したブラウザからローカルにあるHTMLファイルを表示させますが、クエリパラメータ(?)以降の文字列が無視され、表示させたいページが表示されません。結果表示されるのは先頭ページになります。 それはホントだとは思えないんですけど。質問のコード、 > psi.FileName = "file:/c:/temp/doc.html?ページid"; の「?ページid」がクエリ文字列と言うなら、ファイルとして存在するのは「doc.html」で「doc.html?ページid」ではないので(そもそも ? はファイル名には使えないし)、次の行、 > System.Diagnostics.Process.Start(psi); でファイルが見つからないという例外がスローされるはず。 荒らしとか釣り?
退会済みユーザー

退会済みユーザー

2021/12/31 05:55

> System.Diagnostics.Process.Start(psi) を > System.Diagnostics.Process.Start(psi); に直したようだけど、上で私が言った「ファイルが見つからないという例外」とは関係ないのわかってます?
kwmr8416

2021/12/31 05:55

そもそもといったお話されますが、例外スローされません。 今自宅でそのまま本番環境作れませんが、準備した検証環境でもブラウザにHTMLは表示されますが、urlとしてクエリパラメータは表示されていません。タイトルの通りProcess.Start実行時にクエリパラメータが省略(無視)されます。
kwmr8416

2021/12/31 06:20

簡易的ですが、htmlファイル追記しました。
退会済みユーザー

退会済みユーザー

2021/12/31 06:24 編集

失礼しました。自分の環境で検証してみましたが、file:/ が先頭に付与されていると「doc.html?ページid」で「?ページid」はファイル名の一部ではなくクエリ文字列とみなされるようです。 でも、それで「クエリパラメータで指定したページが表示」ということはあり得ないはずです。ASP.NET などの Web アプリの動的なページなら、Web アプリがクエリ文字列を読んで、クエリ文字列で指定されたページにリダイレクトするとかいうことは可能ですけど、静的な html ページでは不可能です。
退会済みユーザー

退会済みユーザー

2021/12/31 06:32

クエリ文字列「?ページid」で指定した別ページではなくて、実はハッシュタグ「#ページid」による同一ページ内リンクでページ内に設定した <p id="ページid">...</p> の位置をブラウザの先頭に表示するのですかね?
kwmr8416

2021/12/31 06:38

あくまで自宅検証用に準備したHTMLです。 業務アプリのHTMLの中身未確認のため、このファイルは適当で申し訳ないんですが、位置に飛ばすということではなく、トップページにいくつかリンクがあって、Startメソッドにクエリパラメータでリンクを指定して、そのリンク先のページを、表示させます。 とにかく、現状のアプリのIEと同様にクエリパラメータを省略しないフルパスをブラウザのurlに渡せれば良いです。
退会済みユーザー

退会済みユーザー

2021/12/31 06:39

上に書いたハッシュタグ「#ページid」による同一ページ内リンクを自分の環境で試してみましたが、質問者さんの書いたように Process を使ったコードでブラウザを起動した場合は無視されました。Edge でも IE でも同じく無視です。ということで上の想像は違うのかな? (もちろん普通に Web サーバーを使ってブラウザでアクセスすれば # は有効なのは確認したうえで試してます)
kwmr8416

2021/12/31 06:45

すいません、一応説明しますが、現状のアプリはIEのインタフェースからのメソッドでリンクに飛んでいます。IEからのEdgeへの切り替えです。
退会済みユーザー

退会済みユーザー

2021/12/31 06:55 編集

> トップページにいくつかリンクがあって、Startメソッドにクエリパラメータでリンクを指定して、そのリンク先のページを、表示させます。 「トップページにいくつかリンクがあって、Startメソッドにクエリパラメータでリンクを指定して」そこを詳しく書いてください。
退会済みユーザー

退会済みユーザー

2021/12/31 06:49

「IEのインタフェースからのメソッドでリンクに飛んでいます」というところも詳しく書いてください。
kwmr8416

2021/12/31 07:00

ソースコードにもありますが、Process.Startの引数に?ページid(クエリパラメータ)が付加されたHTMLファイルのパスをわたしています。このパスには fileスキームも指定しています。 fileスキームを指定することでクエリパラメータが有効になります。 IEのインタフェースについては、現場ではなく手元にソースがありませんが、思い出せる範囲では IEのexeファイルを固定で指定して、クエリパラメータ入りのフルパスで特定のページを表示させています。これらの処理をインタフェースのメソッドから実行しています。
退会済みユーザー

退会済みユーザー

2021/12/31 07:10

「IEのexeファイルを固定で指定して」ってどういうことですか? 「インタフェースのメソッド」って何ですか? 何か IE には普通備わってない特別な拡張をしているように見えますけど?
kwmr8416

2021/12/31 07:18

たぶんこれです。 SHDocVw.InternetExplorer ここから最終的に VisbleとNavigateを実行してIEから指定のHTMLが表示されます。 その間にIEを起動するexeのファイルパスを探しに行く処理だと思いますが、ここでソースコード上にIEの exeのファイル名を指定しているということです。、
TN8001

2021/12/31 08:08 編集

コメント場所間違い^^;
kwmr8416

2021/12/31 08:15 編集

IEは上記のインタフェースを使えば、おそらく間違いなく動きます。 ただHTMLファイルも含めて、わかりづらいのは大変申し訳ありません。 HTMLも見ときたかったんですが、工数が限られているため、自分の担当範囲内に限定して質問させていただいてます。
退会済みユーザー

退会済みユーザー

2021/12/31 08:54 編集

> SHDocVw.InternetExplorer > ここから最終的に > VisbleとNavigateを実行してIEから指定のHTMLが表示されます。 > その間にIEを起動するexeのファイルパスを探しに行く処理だと思いますが、ここでソースコード > 上に IEの exeのファイル名を指定しているということです。 そういう大事なことを何で最初の質問の一行目に書いておかないの? 善意に解釈すると、それがどれほど重要な情報か分からないから書かなかったんだよね。であれば、あなたはこういうサイトで質問できるレベルに達してない。
退会済みユーザー

退会済みユーザー

2021/12/31 08:53

> 工数が限られているため、自分の担当範囲内に限定して質問させていただいてます。 何をふざけたことを言ってるのかな? 回答者と閲覧者の工数はどうしてくれるのかな? 責任者出て来い、話の分かる人を出せって感じだね。大いに反省してほしい。
kwmr8416

2021/12/31 09:00

すいません、 現場でソースコードを目の前にして質問出来るわけはなく、はっきりわかることを限定して書いたつもりでした。 誤解を与え申し訳ありませんが、質問した内容に関しては、引き続き有力な情報があれば検証させて下さい。
kwmr8416

2021/12/31 09:05

工数云々は忘れて下さい、先に頂いた回答のHTMLとかJavaScriptへの対応は無しにしましょうということです。タグ付けしてませんし。
退会済みユーザー

退会済みユーザー

2021/12/31 11:09

忘れろって何言ってるの? 反省はないようだね。これであなたは立派に BL 入り。おめでとう
kwmr8416

2021/12/31 11:27

すいません。 色々とご指摘いただいて申し訳ありませんが、対応策ありましたら検証させて頂きます。 教えて頂きたいのは、Process.Startでクエリパラメータを省略させないようにする方法です。 よろしくお願いいたします。
Zuishin

2021/12/31 11:31

元々が COM を使ってるのに同じことができるわけがない。
dodox86

2022/01/01 04:13

推測ですが、IEのBHO(BrowserHelperObject)を使っていたのだと思われ。Edgeに代わって、代替策は無いですね。
kwmr8416

2022/01/01 04:18

上記のIEのオブジェクトに代わるEdge及びその他のブラウザに対応するインタフェースがなく、Process.Startで現在、解決策探している状況です。
guest

回答2

0

ベストアンサー

クエリパラメータを省略しないフルパスをブラウザのurlに渡せれば良いです。

TN8001 さんの回答と殆ど同じですが、
ちょっと前に似たような質問を見たので参考までにリンクを貼っておきます。

■ ローカルにおいたHTMLでGETパラメータの使用について
https://teratail.com/questions/371002#reply-503012

Process.Start() メソッドで「コマンド」と「URL」を以下のように
分けて呼び出すとパラメータが引き継がれるようです。

C#

1string strUrl = @"C:\temp\doc.html?ページid"; 2string url = @"file:///" + strUrl; 3string command = "msedge"; 4System.Diagnostics.Process.Start(command, url);

投稿2022/01/01 17:00

cx20

総合スコア4648

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

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

kwmr8416

2022/01/01 17:48

ありがとうございます。確認できました。 変数commandにEdgeのexeを指定していますね。IEはiexplore, chromeはchromeとのことで。 既定のアプリに指定されたブラウザに自動で切り替えたいのですが、また確認の上、追記もしくは新たに質問したいと思います。 どうもありがとうございました
kwmr8416

2022/01/01 19:47

以下が既定のアプリに設定したブラウザの実行ファイルのパスを取得するメソッドです。調べた結果、これしか見当たりませんでした。他にもあれば、教えてください。よろしくお願いいたします。 ``` //既定のアプリに設定したブラウザの実行ファイルのパスが変数commandに設定される string command = GetDefaultAssociation("html"); //既定のアプリに設定したブラウザの実行ファイルのパスを返すメソッド public static string GetDefaultAssociation(string extension) { if (extension.Substring(0, 1) != ".") { int os = extension.IndexOf('.'); if (os > 0) { extension = extension.Substring(os); } else { extension = "." + extension; } } const int S_OK = 0; const int S_FALSE = 1; uint length = 0; uint ret = AssocQueryString(AssocF.None, AssocStr.Executable, extension, null, null, ref length); if (ret != S_FALSE) { return ""; } var sb = new StringBuilder((int)length); // (length-1) will probably work too as the marshaller adds null termination ret = AssocQueryString(AssocF.None, AssocStr.Executable, extension, null, sb, ref length); if (ret != S_OK) { return ""; } return sb.ToString(); } [System.Runtime.InteropServices.DllImport("Shlwapi.dll", CharSet = System.Runtime.InteropServices.CharSet.Unicode)] public static extern uint AssocQueryString( AssocF flags, AssocStr str, string pszAssoc, string pszExtra, [System.Runtime.InteropServices.Out] StringBuilder pszOut, ref uint pcchOut ); [Flags] public enum AssocF { None = 0, Init_NoRemapCLSID = 0x1, Init_ByExeName = 0x2, Open_ByExeName = 0x2, Init_DefaultToStar = 0x4, Init_DefaultToFolder = 0x8, NoUserSettings = 0x10, NoTruncate = 0x20, Verify = 0x40, RemapRunDll = 0x80, NoFixUps = 0x100, IgnoreBaseClass = 0x200, Init_IgnoreUnknown = 0x400, Init_Fixed_ProgId = 0x800, Is_Protocol = 0x1000, Init_For_File = 0x2000 } public enum AssocStr { Command = 1, Executable, FriendlyDocName, FriendlyAppName, NoOpen, ShellNewValue, DDECommand, DDEIfExec, DDEApplication, DDETopic, InfoTip, QuickTip, TileInfo, ContentType, DefaultIcon, ShellExtension, DropTarget, DelegateExecute, Supported_Uri_Protocols, ProgID, AppID, AppPublisher, AppIconReference, Max } ```
cx20

2022/01/02 09:45

> 既定のアプリに設定したブラウザの実行ファイルのパスを取得するメソッド 質問者さんの提示されたやり方でも取得できるようなので、それでも良いとは思いますが・・ 以下にいくつかの方法が載っていました。 ただ少し情報が古いかもしれません。(Progid だけで判定しようとすると新しいブラウザに対応できない為) ■ How to find default web browser using C#? https://stackoverflow.com/questions/13621467/how-to-find-default-web-browser-using-c 既定のブラウザの設定自体はレジストリに情報を持っている為、下記のレジストリを辿れば参照することが可能です。 ■ 既定のブラウザのファイルパスの取得方法 1. HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\http\UserChoice キーに移動 2. Progid を取得 3. HKEY_CLASSES_ROOT\<Progid>\shell\open\command に移動 4. 値を取得
kwmr8416

2022/01/05 23:38

ありがとうございます。 参考にさせて頂きます。
guest

0

こういうことですか?

cs

1using System; 2using System.Diagnostics; 3using System.IO; 4 5namespace Questions376049 6{ 7 internal class Program 8 { 9 static void Main() 10 { 11 var s = @" 12<html><body> 13 14<script> 15document.write( ""<div>location.hrefは「 "" + location.href + ""」</div> ""); 16document.write( ""<div>location.protocolは「 "" + location.protocol + ""」</div> ""); 17document.write( ""<div>location.hostnameは「 "" + location.hostname + ""」</div> ""); 18document.write( ""<div>location.hostは「 "" + location.host + ""」</div> ""); 19document.write( ""<div>location.portは「 "" + location.port + ""」</div> ""); 20document.write( ""<div>location.pathnameは「 "" + location.pathname + ""」</div> ""); 21document.write( ""<div>location.searchは「 "" + location.search + ""」</div> ""); 22document.write( ""<div>location.hashは「 "" + location.hash + ""」</div> ""); 23</script> 24 25</body></html> 26".Trim(); 27 File.WriteAllText("test.html", s); 28 29 var p = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "test.html"); 30 Process.Start($"msedge.exe", $@"""file:///{p}?q=javascript#link"""); 31 } 32 } 33}

edge

c# - Process.Start(link) omits part of the link - Stack Overflow

.net - How to launch MS Edge from c# winforms? - Stack Overflow

location.search-JavaScriptリファレンス


追記 ページ内リンク

cs

1using System.Diagnostics; 2using System.IO; 3 4namespace Questions376049 5{ 6 internal class Program 7 { 8 static void Main() 9 { 10 var s = @" 11<!DOCTYPE html> 12<html lang=""ja""> 13<head> 14<meta charset=""utf-8""> 15<title>ページ内リンク</title> 16</head> 17 18<body> 19<h1 id=""page1"">ページ1</h1> 20 <p style=""margin-bottom: 5000px;""> 21 <a href=""file:///c:/temp/doc.html#page2"">ページ2へ</a> 22 </p> 23 24<h1 id=""page2"">ページ2</h1> 25 <p style=""margin-bottom: 5000px;""> 26 <a href=""file:///c:/temp/doc.html#page3"">ページ3へ</a> 27 </p> 28 29<h1 id=""page3"">ページ3</h1> 30 <p style=""margin-bottom: 5000px;""> 31 <a href=""file:///c:/temp/doc.html#page1"">ページ1へ</a> 32 </p> 33 34</body> 35</html>".Trim(); 36 File.WriteAllText(@"c:\temp\doc.html", s); 37 Process.Start($"msedge.exe", $@"""file:///c:/temp/doc.html#page3"""); 38 } 39 } 40}

投稿2021/12/31 06:55

編集2023/07/29 13:49
TN8001

総合スコア9862

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

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

kwmr8416

2021/12/31 07:01

バックエンドのc#だけで対応しようと思っていましたが、JavaScriptありきですか?
kwmr8416

2021/12/31 07:48

おそらくブラウザのurlにクエリパラメータを表示させたいと言ったのを拾われたと思いますが、あくまで自宅の簡易的な検証環境による検証内容であって、最終的にクエリパラメータで指定したHTMLを表示させたいです。
TN8001

2021/12/31 07:52

追記依頼でもさんざん指摘されていますが、静的ファイルなんですよね? だとしたらJavaScriptでどうにかしているか、ページ内リンクだと思うのですが。 本当にクエリパラメータなんですか? ページ内リンクでいいなら動きましたので追記します。
kwmr8416

2021/12/31 07:59

ページ内リンクではありません。 JavaScript見ていません。 HTMLの中身も見ていません。 クエリパラメータで指定しています。 申し訳ありませんが、要件と回答が違います。
TN8001

2021/12/31 08:09

IEで動く最小例を提示いただけると、回答がつくかもしれません。 わたしは今更IEを調べる気はしないので、お力になれそうもありません^^;
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問