javascript - 如何访问传递到脚本源中的 <script> 标记的请求参数?

标签 javascript html

我希望将请求参数传递给要加载的 JavaScript。然后可以将该参数用作脚本中的常量。

其中一个例子是 fancybox 2.x 如何需要 v=2.1.0 参数 as defined in the instructions .

搜索 fancybox 源代码后,我无法确定它是如何使用的,它是 CSS 和 JavaScript 所必需的。

我对此的主要要求是能够将应用程序上下文路径传递给处理 ReST 请求的 JS。

<script type="text/javascript"
        src="<c:url value="/js/rest.js?ctx=${pageContext.request['contextPath']}"/>"></script>

最佳答案

首先你必须识别脚本(你可以给脚本标签一个id)。脚本位于 document.scripts 节点列表中。然后,您获取它的 src 属性(一个字符串),将其在问号上分割并获取结果数组的第二个元素。可以进一步处理。

类似于:

var script = document.scripts[0]
   ,params = script.src.split('?')[1].split('&')
   ,paramsObj = {};

for (var i=0;i<params.length;i+=1){
  var keyvalue = params[i].split('=');
  paramsObj[keyvalue[0]] = keyvalue[1];
}

关于javascript - 如何访问传递到脚本源中的 &lt;script&gt; 标记的请求参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12210769/

相关文章:

html - 两个表格垂直,一个表格作为另一个表格的标题,并且列和宽度不对齐

javascript - 即使屏幕分辨率发生变化,我如何让我的图像在页面上移动

javascript - 具有原始绑定(bind)的指令中的函数回调

javascript array - 创建具有起始索引和默认值的数组的最快最有效的方法是什么

javascript - 在循环内的 IIFE 内取消 setTimeout

javascript - 滚动到自定义组件

javascript - 带有正文溢出的 Firefox CSS 转换 :hidden

html - 如何拉伸(stretch)DIV内的背景图片

javascript - 如何保持文本框大小始终不变

html - 适用于任何设备的固定高度 slider