 <p>Replace your jquery code with code below as you are creating the anchor tags with ajax and for the code those does not exists so just load the <code>anchor click event</code> inside <code>success function of your ajax call</code> and it will work :</p> <pre><code> $(function() { $.ajax({ url: "http://linktoapi&amp;callback=myMethod", timeout: 2000, jsonpCallback: "myMethod", jsonp: false, dataType: "jsonp", success: function(data) { var newContent = ''; for (var i = 0; i &lt; data.listing.length; i++) { newContent += '&lt;p class="property-details"&gt;' + '&lt;a href="' + data.listing[i].listing_id + '"&gt;' + data.listing[i].displayable_address + '&lt;/a&gt;&lt;/p&gt;'; } $('#content').html(newContent).hide().fadeIn(400); $('.property-details a').on('click', function(e) { e.preventDefault(); $('#content').html("test").hide().fadeIn(400); }); }, error: function() { $content.html('&lt;div class="container"&gt;Please try again soon.&lt;/div&gt;'); } }); }); </code></pre>