提取第一个url参数,然后将其放在脚本标记内

时间:2013-07-10 07:54:35

标签: javascript html url

我正在使用HTML和Javascript。我正在尝试提取第一个URL参数并将其放在我的脚本标记中的variable1变量中。

以下是我的代码

<html>
<head>
<title>Applying</title>
</head>
<body>

<script type="text/javascript" 
urlId="420" 
dataTitle= variable1;
dataemail="admin@domain.net">
</script>

</body>
</html>

我不知道如何从URL中提取第一个参数并将其放在我的脚本标记中的variable1变量中。

假设网址是这样的 -

test.html?parameter1=hello

然后我的脚本标记中的variable1变量在提取后应该具有hello值。知道如何做到这一点?任何帮助将不胜感激。

更新了我尝试的代码

<html>
<head>
<title>Applying</title>
</head>
<body>

<script>
function getUrlVars() {
    var vars = {};
    var parts = window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi, function(m,key,value) {
    vars[key] = value;
     });
    return vars;
}
var variable1 = getUrlVars()["parameter1"];                                  
</script>

<script type="text/javascript" 
urlId="420" 
dataTitle= variable1;
dataemail="admin@domain.net">
</script>

</body>
</html>

以上代码是否会执行我要求的所需内容?

1 个答案:

答案 0 :(得分:1)

动态创建脚本元素:

var myScript = document.createElement('script');

myScript.setAttribute('type', 'text/javascript');
myScript.setAttribute('urlId', '420');
myScript.setAttribute('dataTitle', variable1);
myScript.setAttribute('dataemail', 'admin@domain.net');

document.body.appendChild(myScript);

整个解决方案:

<html>
<head>
    <title>Applying</title>
</head>
<body>

<script>
function getUrlVars() {
    var vars = {};
    var parts = window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi, 
        function(m,key,value) {
            vars[key] = value;
        });
    return vars;
}
var variable1 = getUrlVars()["parameter1"];    

var myScript = document.createElement('script');

myScript.setAttribute('type', 'text/javascript');
myScript.setAttribute('urlId', '420');
myScript.setAttribute('dataTitle', variable1);
myScript.setAttribute('dataemail', 'admin@domain.net');

document.body.appendChild(myScript);                              
</script>

</body>
</html>