Могу ли я передать параметр непосредственно в .js файл и как получить значение

Я хочу передать параметр на некоторый javascript, используя одну строку кода, например:

<script language="JavaScript" src="courselist.js?subj=MATH" type="text/javascript" />

Внутри javascript файла, как я могу получить значение параметра "subj"?

Спасибо

Ответ 1

Это возможно только при доступе к элементу "собственный" <script> в HTML DOM и анализировать атрибут src.

Короче говоря, вот хорошая статья с подробными объяснениями и примерами кода: http://feather.elektrum.org/book/src.html

Ответ 2

Почему бы просто не создать переменную внутри тега script, прежде чем включать файл javascript?

<script type="text/javascript">
    var subj = "MATH";
</script>
<script language="JavaScript" src="courselist.js" type="text/javascript"></script>

Ответ 3

Единственный способ получить что-то подобное для работы - это обеспечить сервер, обслуживающий динамически созданный файл javascript, где на сервере есть что-то вроде этого:

if(Parameters["subj"]=="MATH"){
  jsfile="var subj='MATH'; "+jsfile;
}...

Ответ 4

Я не думаю, что Javascript файл будет знать о параметре, который ему передается. Если этот адрес переходит на какой-то серверный script (а не только статический файл Javascript), то вы можете что-то с ним сделать.

Ответ 5

Когда script, загруженный из файла script src, интерпретируется, его связанный элемент script существует в документе.

Не беспокойтесь о том, какой файл есть, посмотрите на каждый script элемент для URL-адреса с строкой запроса.