SharePoint Stack Exchange is a question and answer site for SharePoint enthusiasts. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

May I know if there are any config to prevent people from clicking on the links on the calendar view of a SharePoint 2007? (e.g. In the picture below, there are 3 links such as "Meeting with Contoso manager". I don't want anyone to click on these links.)

Note: They can still click on other "menu" links such as "Day", "Week" and "Month".

enter image description here

share|improve this question
up vote 0 down vote accepted

Try using the Calendar Plugin from this website:

Inside the website, there are a few JQuery Calendar Plugin (such as FullCalendar and JCalendar) that you can use in conjunction with your List.

share|improve this answer
-1 Almost completely irrelevant, I'm afraid. – Stuart Pegg Nov 9 '11 at 15:17
Hi Stuart, the asker is looking for ways to prevent users to click the events on the calendar. There are basically 2 ways, one offer by Amit (which the asker is finding difficulties to get it working as discussed in the comments above). The another method is using SPServices, retrieve all the events and store into a array. Then use one of the JQuery Calendar Plugin to show those events. I do not know if the asker know how to use a JQuery plugin but at the least, I offer the asker another alternative method and hopeful, it helps. – Anderson Karu Nov 10 '11 at 1:00
Thanks Anderson. Tried the JQuery Calendar Plugin - Full Calendar and now is working to what I asked for. Also Thanks everyone for providing solutions and help for my question. – Larry Morries Nov 16 '11 at 9:31

There is no setting to prevent the hyperlink click for calendar in Moss.

But you can do it with JQuery. You can disable individual links or all links in the calendar div.

Check out this link to find how to disable a link :

share|improve this answer
after reading the link you provided, may I know how (or where) do I insert the following code into the SharePoint 2007 page? (Do I need to use a webpart to insert the code or ...?) $('#MontlyViewDefault_CalendarView').click(function(e) { e.preventDefault(); }); – Larry Morries Nov 1 '11 at 1:26
You can insert the code to the master page or the individual page (using SharePoint Designer). You can also add content editor webpart on the page and insert it in the webpart. Ensure that you also have jquery library reference before the script. – Amit Kumawat Nov 1 '11 at 3:34
Strange, I am still able to click each of the items in the calendar even though I have [1] import jquery library reference and [2] insert my code into the javascript tag. Any insight? – Larry Morries Nov 1 '11 at 3:49
You should construct correct jquery for that. Use this one: $(document).ready(function(){ $('#MontlyViewDefault_CalendarView a').attr("href","#"); $('#MontlyViewDefault_CalendarView a').attr("onclick",""); }); – Amit Kumawat Nov 1 '11 at 6:35
Strange, I am still able to click on each of the link even I used your jquery. I put it insider <asp:Content ContentPlaceHolderId="PlaceHolderAdditionalPageHead" runat="server"> tag, is it correct or I have to put in other tag? – Larry Morries Nov 1 '11 at 6:44

I already found solution. In case if some one else want use here is the JavaScript code:

<script type="text/javascript" src="/_layouts/js/jquery-1.6.1.js"></script>
 <script type="text/javascript">
    function MyCalendarHook() {     
    var _patchCalendar = function() {        
        $('.ms-acal-rootdiv .ms-acal-item').click(function (e) {
            //var itemId = $('a', $(this)).attr('href').split('?ID=')[1];
            //alert('Item with ID ' + itemId + ' was clicked!');

    var _onItemsSucceed = SP.UI.ApplicationPages.CalendarStateHandler.prototype.onItemsSucceed;
    SP.UI.ApplicationPages.CalendarStateHandler.prototype.onItemsSucceed = function($p0, $p1) {, $p0, $p1);

Just paste this code in PlaceHolderBodyAreaClass tag.

You can also refer this link

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.