How do I create a link using javascript?

How do I create a link using javascript?

I have a string for a title and a string for a link. I’m not sure how to put the two together to create a link on a page using Javascript. Any help is appreciated.
EDIT1: Adding more detail to the question.
The reason I’m trying to figure this out is because I have an RSS feed and have a list of titles ands URLs. I would like to link the titles to the URL to make the page useful.
EDIT2: I am using jQuery but am completely new to it and wasn’t aware it could help in this situation.


Solution 1:


var a = document.createElement('a');
var linkText = document.createTextNode("my title text");
a.title = "my title text";
a.href = "";


Solution 2:

With JavaScript

  1. var a = document.createElement('a');
    a.innerHTML = desiredText;
    // apend the anchor to the body
    // of course you can append it almost to any other dom element
  2. document.getElementsByTagName('body')[0].innerHTML += '<a href="'+desiredLink+'">'+desiredText+'</a>';

    or, as suggested by @travis :

    document.getElementsByTagName('body')[0].innerHTML +=;
  3. <script type="text/javascript">
    //note that this case can be used only inside the "body" element
    document.write('<a href="'+desiredLink+'">'+desiredText+'</a>');

With JQuery

  1. $('<a href="'+desiredLink+'">'+desiredText+'</a>').appendTo($('body'));
  2. $('body').append($('<a href="'+desiredLink+'">'+desiredText+'</a>'));
  3. var a = $('<a />');

In all the above examples you can append the anchor to any element, not just to the ‘body’, and desiredLink is a variable that holds the address that your anchor element points to, and desiredText is a variable that holds the text that will be displayed in the anchor element.

Solution 3:

Create links using JavaScript:

<script language="javascript">
document.write("<a href=\"\">");
document.write("Your Title");


<script type="text/javascript">
document.write('Your Title'.link(''));


<script type="text/javascript">
newlink = document.createElement('a');
newlink.innerHTML = 'Google';
newlink.setAttribute('title', 'Google');
newlink.setAttribute('href', '');

Solution 4:

There are a couple of ways:

If you want to use raw Javascript (without a helper like JQuery), then you could do something like:

var link = "";
var element = document.createElement("a");
element.setAttribute("href", link);
element.innerHTML = "your text";

// and append it to where you'd like it to go:

The other method is to write the link directly into the document:

document.write("<a href='" + link + "'>" + text + "</a>");

Solution 5:

      _$ = document.querySelector  .bind(document) ;

        var AppendLinkHere = _$("body") // <- put in here some CSS selector that'll be more to your needs
        var a   =  document.createElement( 'a' )
        a.text  = "Download example" 
        a.href  = "//bit\.do/DeezerDL"

        AppendLinkHere.appendChild( a )

     // a.title = 'Well well ... 
        a.setAttribute( 'title', 
                         'Well well that\'s a link'
  1. The ‘Anchor Object’ has its own*(inherited)* properties for setting the link, its text. So just use them. .setAttribute is more general but you normally don’t need it. a.title ="Blah" will do the same and is more clear!
    Well a situation that’ll demand .setAttribute is this: var myAttrib = "title"; a.setAttribute( myAttrib , "Blah")

  2. Leave the protocol open.
    Instead of consider to just use //
    Check if can be accessed by http: as well as https: but 95 % of sites will work on both.

  3. OffTopic: That’s not really relevant about creating links in JS
    but maybe good to know:

Solution 6:

Dynamically create a hyperlink with raw JavaScript:

   var anchorElem = document.createElement('a');
   anchorElem.setAttribute("href", yourLink);
   anchorElem.innerHTML = yourLinkText;

   document.body.appendChild(anchorElem); // append your new link to the body