1

我正在尝试包含这样的 .js 文件:

<script src="javascriptfile.js"></script>

但是,我真正想要的是将一些参数传递给我的 .js 文件,如下所示:

<script src="javascriptfile.js?id=3482"></script>

id=我应该如何从文件中读取该部分.js

4

5 回答 5

3

这只能通过访问 HTML DOM 中的“自己的”元素并解析 src 属性来实现。

这是一篇很好的文章,有详细的解释和代码示例: http: //feather.elektrum.org/book/src.html

于 2013-01-28T08:06:00.077 回答
3

这是一种新的方法来做到这一点。

您可以使用 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!”的警报。

希望它可以帮助某人!

于 2014-08-13T19:44:52.820 回答
2

从它加载的 javascript 中找到您自己的脚本标签并不容易。可以搜索文档中的所有脚本标签并找到其中包含您的文件名的标签并解析出查询字符串,但是在脚本加载之前设置一个变量要容易得多,如下所示:

<script>var javascriptfile_id = 3482;</script>
<script src="javascriptfile.js"></script>

然后,只需检查javascriptfile_id脚本中的变量。

于 2013-01-28T08:05:18.467 回答
1

您可以使用 jQuery 解析参数,但我发现这有点令人费解。这是一个例子:http ://wowmotty.blogspot.com/2010/04/get-parameters-from-your-script-tag.html

更好的方法是在 JS 文件中创建一个初始化方法,并在页面加载时使用您的参数调用该初始化方法。

于 2013-01-28T08:09:10.087 回答
0

如果变量不是用于服务器的,则不能通过查询字符串将变量传递给加载的脚本,以便服务器端脚本可以在 JavaScript 发送到客户端之前对其进行预处理。

如果要将变量传递给外部脚本中的代码,则必须创建id一个全局 JavaScript 变量。或者您必须在外部脚本文件中调用一个函数,将该值作为参数传递给该函数。

于 2013-01-28T08:05:53.960 回答