开发者

How to add a var to href

开发者 https://www.devze.com 2022-12-17 16:48 出处:网络
I need something like this: var link = \" http://www.google.com\"; <a href=\'link\' /> So I need to use a variable as href attribue of a link. Is this possible?

I need something like this:

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

<a href='link' />

So I need to use a variable as href attribue of a link. Is this possible?

It worked with 开发者_开发技巧 "<a href= '" + link + "' />". Is there a better way?


You should set the href value on the server, it is bad design to use scripting for this.

However, to answer the question, it can be done by using script to set the href property of the A element once it is in the DOM, e.g.:

<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>

Of course there are a thousand other ways, all with their pitfalls. So set the value on the server and avoid them all.

-- 
Rob


Using jQuery this would be

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

Though this would not degrade gracefully should javascript be turned off and you'd probably want to use something else rather than selecting by the href anyways.


If you are actually writing both of those lines of code, it would be much easier to use write

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

Otherwise, you will need to use JavaScript to set the href property of your link, which will require getting a reference to it (which means you should set its id property).

So you could write something like:

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

and in your JavaScript have:

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

but first, please think about whether this is really necessary (or provide some more details in your question).


You're using Jetpack, so you can do <a href={link}/>.toXMLString().

If all you want to do is create an <a/> element, use the following.

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

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号