如何将var添加到href

时间:2010-01-23 00:31:51

标签: javascript dom href

我需要这样的东西:

var link = " http://www.google.com";

<a href='link' />

所以我需要使用一个变量作为链接的href。这可能吗?

它适用于"<a href= '" + link + "' />"。还有更好的方法吗?

4 个答案:

答案 0 :(得分:3)

你应该在服务器上设置href值,为此使用脚本是不好的设计。

然而,要回答这个问题,可以通过使用脚本来设置A元素在DOM中的href属性,例如:

<a href="<a useful URI if javascript not available>" id="a0">foo</a>

<script type="text/javascript">
  var a = document.getElementById('a0');
  if (a) {
    a.href = "http://www.google.com";
  }
</script>

当然还有其他一千种方式,都有它们的陷阱。因此,在服务器上设置值并避免全部。

-- 
Rob

答案 1 :(得分:0)

使用jQuery,这将是

var link = "http://www.google.com";
$("a[href='link']").attr("href", link);

虽然如果javascript被关闭,这不会优雅地降级,你可能想要使用别的东西而不是通过href选择。

答案 2 :(得分:0)

如果您实际上正在编写这两行代码,那么使用write

会容易得多

<a href="http://www.google.com">Google</a>

否则,您需要使用JavaScript来设置链接的href属性,这需要获取对它的引用(这意味着您应该设置其id属性。)

所以你可以这样写:

<a id="myLink">Google</a>

并在您的JavaScript中有:

document.getElementById("myLink").href=link

但首先,请考虑这是否真的有必要(或在您的问题中提供更多细节)。

答案 3 :(得分:0)

您正在使用Jetpack,因此您可以<a href={link}/>.toXMLString()

如果你想要做的就是创建一个<a/>元素,请使用以下内容。

var anchor = document.createElement("a");
anchor.href = link;