Randy Tang
Randy Tang

Reputation: 4353

AJAX: if right click to open a new tab, render the whole page

I use AJAX on a link to insert data into a certain <div> in the same page. However, if the user right-clicks and opens in a new tab, the new page will contain only the data, without other page elements. How can I do to render a whole page for a right-click-new-tab?

HTML:

<a class=".updateContent" href="...">The link</a>
...
<div id="content></div>

AJAX:

$(document).ready(function() { 
  $('.updateContent').click(function() { 
    var url = $(this).attr('href'); 
    $('#content').load(url); 
    return false; 
  }); 
});

Upvotes: 0

Views: 985

Answers (1)

Matt Pileggi
Matt Pileggi

Reputation: 7196

Don't use an href. With an href the user has the option to open in a new tab/window or copy/paste no matter what you do (except maybe disable right click entirely but that's annoying). I suggest something like the following:

<a class="updateContent" data-url="...">the link</a>

Then your jQuery

var url = $(this).data('url');

Upvotes: 1

Related Questions