Click here to Skip to main content
11,576,977 members (52,280 online)
Click here to Skip to main content

Disabling the right click on web page

, 12 Aug 2005 134.5K 265 22
Rate this:
Please Sign up or sign in to vote.
Article shows two methods to disable context menu on right click on web page first method can be found on majority of web pages, but second method which cannot be found anywhere is simplest
<!-- HTML for article "Disabling the right click on web page" by Rohit123dighe,Rohit123dighe,Rohit123dighe,Rohit123dighe URL: http://www.codeproject.com/useritems/Disabling_the_right_click.asp Article content copyright Rohit123dighe,Rohit123dighe,Rohit123dighe,Rohit123dighe All formatting, additions and alterations Copyright © CodeProject, 1999-2005 --><!----------------------------- Ignore ----------------------------->

Download demo project - 2.57 Kb

Introduction

Want to protect your source code? Using this code will prevent the vast majority of users from right-clicking over a page and choosing "View source", or right-clicking over an image and saving it.

Some times there might be the requirement to disable the pop up menu on click of right button.

 

Programmers may need to disable right click to prevent user from saving the images on the page or viewing the source of the page.

 

Though disabling right click is not complete solution to save the data, but it will make task difficult, or may be impossible for the rookies.

 

I searched on a net for the solution to this problem and i got following solution.

Method 1

      In this method we add a javascript method, in this we check if click is right click or left click if it is right click then a message is displayed like "Right click disabled"

 

<script language="javascript">
document.onmousedown=disableclick;
status="Right Click Disabled";
Function disableclick(e)
{
  if(event.button==2)
   {
     alert(status);
     return false;	
   }
}
</script>
 

But in this solution if you click the right click it displays the message

“Right click disabled”.

 

If we want to remove the messegebox then this solution do not work.

 

  I am having another simple solution to achieve the same result and also it does not show the messegebox.

Method 2

          In this method we set the oncontextmenu="return false" in the body part of the page

so body part will look like

<body oncontextmenu="return false">
...
</body>

So whenever user clicks the right mouse button nothing will happen, no message no context menu.

 

 Sometimes there might be requirement to disable the right click on specific control to achive this we have to follow these steps.

1.      remove added code in body (i.e. oncontextmenu=”return false”)

2.      Add one table and in its row add the control e.g. datagrid control

3.      put the oncontextmenu=”return false” in the <tr> for that control

 

So code will look like this

<Body>
  <Table>
   <tr oncontextmenu="return false">
    <td>
     <asp:datagrid id="dgGrid1">---</asp:datagrid>
   </td>
  </tr>
 </Table>
</Body>

So by this method context menu on the right click of right mouse click can be disabled.

 

 

<!----------------------------- Article Ends ----------------------------->

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here

Share

About the Author

RohitDighe
Web Developer
India India
Rohit Dighe
B.E. Computer from University of Pune, India.

Working on Asp.Net and C# from 2 years

You may also be interested in...

Comments and Discussions

 
GeneralMy vote of 1 Pin
Margo Morel22-Jun-14 10:28
memberMargo Morel22-Jun-14 10:28 
Questionnice sir Pin
ntitish14-Mar-13 3:46
memberntitish14-Mar-13 3:46 
GeneralMy vote of 5 Pin
hadi552625-Jul-12 19:49
memberhadi552625-Jul-12 19:49 
GeneralMy vote of 5 Pin
shaminders7-Apr-12 23:07
membershaminders7-Apr-12 23:07 
GeneralThis helped me. Thanks Pin
NeCroFire22-Nov-10 2:56
memberNeCroFire22-Nov-10 2:56 
GeneralRe: This helped me. Thanks Pin
hadi552625-Jul-12 19:50
memberhadi552625-Jul-12 19:50 
Generaluseless trick Pin
anojkumar1-Jul-08 18:47
memberanojkumar1-Jul-08 18:47 
QuestionHow to disable Copy/Past into a TextBox Pin
Sudipta(Bubun)28-Jun-07 20:22
memberSudipta(Bubun)28-Jun-07 20:22 
AnswerRe: How to disable Copy/Past into a TextBox Pin
anil 1kumar23-Oct-07 19:05
memberanil 1kumar23-Oct-07 19:05 
GeneralOther ways to access the menu Pin
Philippe Mori13-Aug-05 8:14
memberPhilippe Mori13-Aug-05 8:14 
GeneralWaste of time Pin
Anonymous13-Aug-05 7:14
sussAnonymous13-Aug-05 7:14 
GeneralWhy you shouldn't do this: Pin
Phil Uribe12-Aug-05 12:18
memberPhil Uribe12-Aug-05 12:18 
QuestionAre you serious?? Pin
JoeySpimoley7-Aug-05 4:18
memberJoeySpimoley7-Aug-05 4:18 
GeneralDon't do this Pin
ector5-Aug-05 10:40
memberector5-Aug-05 10:40 
GeneralHTML trick... Pin
PixiGreg5-Aug-05 2:59
memberPixiGreg5-Aug-05 2:59 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

| Advertise | Privacy | Terms of Use | Mobile
Web03 | 2.8.150603.1 | Last Updated 12 Aug 2005
Article Copyright 2005 by RohitDighe
Everything else Copyright © CodeProject, 1999-2015
Layout: fixed | fluid