[英]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.