在HTML <a> link</a>中使用Javascript变量

时间:2012-10-22 20:06:06

标签: javascript html

我的代码是这样的 -

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" 
    "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title></title>


    <script type='text/javascript'>

    var random_generator;
    document.write('Random Selection: ');
    var arr=['One','Two','Three','Four','Five','Six','Seven','Eight','Nine','Ten'];
    var randomnumber=Math.floor(Math.random()*10);
    random_generator=arr[randomnumber];
    document.write(random_generator+ '<br>');


    </script>

<style type="text/css">

</style>
<a href='www.xyz.com/Index1/Index2/Variable/Index4'>Good Morning</a>
</head>
<body> 
</body>  
</html>

在tag中代替Variable,我想使用random_generator Javascript变量。我怎么做?在此先感谢。

注意:random_generator不会替换整个链接。只有部分链接(/ Variable /)。根据此值,用户将显示不同的页面。

5 个答案:

答案 0 :(得分:5)

或许您可以将链接写为内联js。

​<script>
document.write('<a href="http://www.xyz.com/Index1/Index2/' + random_generator + '/Index4">hello</a>');
</script>​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​

答案 1 :(得分:1)

我不确定我是否理解你的问题。但是,如果您尝试动态设置链接到href,则以下内容应该有效(假设您没有使用jquery)。

<a href='http://www.xyz.com/Index1/Index2/Variable/Index4' id="index">Good Morning</a>
<script>
    var newUrl = document.getElementById('index').href;
    newUrl = newUrl.replace("Variable", random_generator);
    document.getElementById('index').href = newUrl;
</script>

答案 2 :(得分:0)

您可以在脚本执行时使用jQuery更新dom元素

首先,您必须为您的href提供ID

<a href="#" id="myHref"

然后

$('#myHref').attr('href', variable)

或者您可以更改链接文字 var varText = "This is a link"; $('#myHref').text(varText);

答案 3 :(得分:0)

非常确定这将是wrk

   document.getElementById('myHref').href = variable;

答案 4 :(得分:0)

据我所知,这是不可能的。你可以做以下两件事之一:

1加载文档时更改HREF属性。使用JQuery,您可以执行类似

的操作
$(function() {
 $('a').attr('href', 'www.xyz.com/Index1/Index2/' + random_generator + '/Index4');
});

2抓住点击事件并使用javascript重定向,这意味着即使用户多次点击链接而不刷新页面也是随机的。

$(function() {
 $('a').on('click', function(e) {
   e.preventDefault();
   window.location = 'www.xyz.com/Index1/Index2/' + random_generator + '/Index4';
 });
});

如果你不希望你使用jquery,我确信网上有很多例子可以用普通的javascript来完成。