Delete The Content Type From The Site in SharePoint 2010 Using ECMAScript


Introduction
 
In this article you will see how to delete the content type from the site in SharePoint 2010 using ECMAScript. I have a content type named "Custom Content Type" that belongs to "Custom Content Types" group (Navigate to the site, click on Site Actions. Click on Site Settings. In the Galleries section, click on Site Content Types).

SharePoint1.gif
 
Steps Involved

Step 1 : Navigate to the SharePoint site (I have a site page created in my site where I am going to add the content editor web part).
 
Step 2 : Go to Site Actions, click on Edit Page.

SharePoint2.gif
 
Step 3 : Click on the Insert tab in the ribbon interface and then click on Web Part button.

SharePoint3.gif
 
Step 4 : Select Media and Content in the Categories section and then click on Content Editor.

SharePoint4.gif
 
Step 5 : Click on Add.
 
Step 6 : The Content Editor web part will be added to the site page.
 
Step 7 : Click on down arrow and then click on Edit Web Part.

SharePoint5.gif
 
Step 8 : Click on "Click here to add new content".

SharePoint6.gif
 
Step 9 : Click on Format Text tab in the ribbon interface and then click on HTML drop down.

SharePoint7.gif
 
Step 10 : Click on Edit HTML source.
 
Step 11 : HTML source window will pop up.

SharePoint8.gif
 
Step 12 : Copy and paste the following script.
 
<script language="ecmascript" type="text/ecmascript"> 
         var contentTypeCollection;
         var contentType; 
         function deletContentType() {
             var clientContext = new SP.ClientContext.get_current();
             if (clientContext != undefined && clientContext != null) {
                 var web = clientContext.get_web();
                 this.contentTypeCollection = web.get_contentTypes();
                 this.contentType = contentTypeCollection.getById("0x0100FFC434A461E47E4EB81D3FD76D42BFBF");
                 this
.contentType.deleteObject();
 
                clientContext.executeQueryAsync(Function.createDelegate(this, this.onQuerySucceeded),
 Function.createDelegate(this, this.onQueryFailed));
             }
         } 
         function onQuerySucceeded() {
             alert("Content Type deleted successfully")
         } 
         function onQueryFailed(sender, args) {
             alert('Request failed. ' + args.get_message() + '\n' + args.get_stackTrace());
         }
</
script
>
 
    <input id="btndeletContentType" onclick="deletContentType()" type="button" value="Delete Content Type" />

 
Step 13 : Click on Ok.
 
Step 14 : In the ribbon interface click on Save & Close button.

SharePoint9.gif
 
Step 15 : In the content editor web part you can find a button named "Delete Content Type"; click on that button.

SharePoint10.gif
 
Step 16 : An alert will pop up.

SharePoint11.gif
 
Note:
 
If the content type is used by any of the lists then you will be getting the following exception.

SharePoint12.gif
 
Reference
 
SP.ContentTypeCollection.deleteObject() Method - http://msdn.microsoft.com/en-us/library/ee659616.aspx
 
Summary
 
Thus in this article you have seen how to delete the content type from the site in SharePoint 2010 using ECMAScript.