繁体   English   中英

在HTML <a>链接中使用Javascript变量

[英]Using a Javascript variable in HTML <a> link

我的代码是这样的 -

<!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 /)。 根据此值,将向用户显示不同的页面。

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

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

我不确定我是否理解你的问题。 但是如果您尝试动态设置链接到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>

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

首先,你必须给你的href一个id

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

然后

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

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

非常肯定会这样

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

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

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做到这一点。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM