次のような .js ファイルを含めようとしています。
<script src="javascriptfile.js"></script>
しかし、私が本当に望んでいるのは、次のように .js ファイルにいくつかのパラメーターを渡すことです。
<script src="javascriptfile.js?id=3482"></script>
ファイルid=
内からその部分を読み取るにはどうすればよいですか?.js
次のような .js ファイルを含めようとしています。
<script src="javascriptfile.js"></script>
しかし、私が本当に望んでいるのは、次のように .js ファイルにいくつかのパラメーターを渡すことです。
<script src="javascriptfile.js?id=3482"></script>
ファイルid=
内からその部分を読み取るにはどうすればよいですか?.js
これは、HTML DOM の「own」要素にアクセスし、src 属性を解析することによってのみ可能です。
詳細な説明とコード サンプルを含むすばらしい記事を次に示します: http://feather.elektrum.org/book/src.html
これを行う新しい方法を次に示します。
JSON.parse() を使用できます。
ここに例があります:
html のコード:
<script id="scriptID" src="demo.js">
{
"param1":"Hello World!",
"param2":"paramLorem"
}
</script>
demo.js のコード:
jQuery(document).ready(function(){
var myAttributes = JSON.parse(jQuery('#scriptID').html());
alert(myAttributes['param1']);
});
「Hello World!」というアラートが表示されます。
それが誰かを助けることを願っています!
ロードされた JavaScript 内から独自のスクリプト タグを見つけるのは簡単ではありません。ドキュメント内のすべてのスクリプト タグを検索して、ファイル名が含まれているものを見つけ、クエリ文字列を解析することは可能ですが、次のようにスクリプトをロードする前に変数を設定する方がはるかに簡単です。
<script>var javascriptfile_id = 3482;</script>
<script src="javascriptfile.js"></script>
そして、javascriptfile_id
スクリプト内の変数を確認してください。
jQuery を使用してパラメーターを解析することもできますが、やや複雑です。例を次に示します: http://wowmotty.blogspot.com/2010/04/get-parameters-from-your-script-tag.html
それを行うためのより良い方法は、JS ファイルで初期化メソッドを作成し、ページの読み込み時にパラメーターを使用してその初期化メソッドを呼び出すことです。
サーバー側のスクリプトがクライアントに送信される前に JavaScript を前処理できるように、変数がサーバー向けでない場合、クエリ文字列を介して読み込まれたスクリプトに変数を渡すことはできません。
外部スクリプト内のコードに変数を渡したい場合はid
、グローバル JavaScript 変数を作成する必要があります。または、外部スクリプト ファイル内で関数を呼び出し、値をパラメータとしてその関数に渡す必要があります。