Click here to Skip to main content
Licence 
First Posted 14 Jun 2004
Views 106,165
Bookmarked 48 times

JavaScript Control Text Design Templates for ASP.NET

By | 4 Aug 2004 | Article
Web design template allows user to type text with all styles, pictures, links, bulletted text, color etc.., for ASP.NET.
Prize winner in Competition "ASP.NET May 2004"

Introduction

This control is used in master driven template web pages.

Say if you want to create a mail box and allow user to create a page to compose with rich text editor, you can use this component which allows you to have all sorts of formatted text like Colored, Bold, Italicized, Indented, ....... you can even have the Links and pictures added.

You also can view the HTML part of the text being added in the control.

Getting In

Before getting in to the part -- coding the control, I would like to explain how to add the control in the web page. For that, the dependencies of the controls are:

  • HtmlEditUtility.js
  • index.htm
  • colorpanel.htm

These three files are necessary to add the control.

Steps to Add the Control:

  • Add the HtmlEditUtility.js in script block.
    <SCRIPT language="javascript" src="HtmlEditUtility.js"></SCRIPT>
  • Then in the area from where you want the control to be visible, you need to call the JavaScript method ShowCM() with two parameters, one is the result textbox and the other is the title to be displayed.

    Example:

    <asp:textbox id="t1" textmode="multiline" 
           name = "t1" runat = "server/">
     <img src="show.jpg" onclick = "ShowCM(t1,'Sample')">

    Here, you can see the ShowCm method. That is, here t1 is the text box where the resultant edited text of the control will fall, and if you write something in the textbox and click on the image, it will populate the control with the text you typed in t1.

  • Make sure you copy the control's HTML which is available in the download, and copy it in the page where you wanted to display. If you want them in any particular position, specify the style Z-Index, Top, and Bottom properties for fixing them in specified areas.

    Like:

    style="DISPLAY: none; Z-INDEX: 101; 
        LEFT: 235px; POSITION: absolute; TOP: 258px"

    This displays it at the top of all the controls, in the (235,258) position.

With this, the control is ready for you to work.

Now, we can move to the actual stuff, creating the Control:

I had used a IFrame for this process and set its design mode ON, so that it allows us to type in the web page (index.htm). I think now you can understand why we used index.htm. Same way the colorpanel.htm is used to pick the color from the table and fill in to the selected text.

We have a method execCommand().

Iframe.document.execCommand();

which allows us to execute commands on the Iframe. Specify the Iframe name there.

We can execute the Iframe with commands like CreateLink, InsertImage, ForeColor.... Like this, there are a set of many commands.

Execute them like this:

NewsBody_rich.document.execCommand("InsertImage","TextEdit.jpg");

Here, the NewsBody_rich is the Iframe and the InsertImage is the command that inserts the image in the Iframe, and the image is TextEdit.jpg.

The function in the HtmlEditUtility.js that does the trick is:

function cmdExec(cmd,opt) 
{
  if (isHTMLMode)
  {
    alert("Formatting happens only in Normal mode");
    return;
  }
  NewsBody_rich.focus();
  NewsBody_rich.document.execCommand(cmd,"",opt);
  NewsBody_rich.focus();
}

This is the function that makes every thing happen.

For Spell Check you need to do the Following

In Internet Options security Settings --> Custom Level --> Initialize and Script controls not Marked as safe --> enable

actually this uses the Word applications as the default spell checker so u need to do some macro settings there that is

Tools --> options --> security--> macro security --> Medium Level

this will do the rest for the spell checker to work.

The main logic used here is:

  • First is, as the design mode of iframe is turned on, we are typing the text and all formats in the inner text of the iframe.
  • Second one is, executing all the contents by using the execCommand method in JavaScript.
  • Third and final is, retrieving the InnerText of the Iframe. This is the trick used to accomplish the task.

Now, the code and the control is ready for use!

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

About the Author

R. Senthil Kumaran

Architect
Tesco HSC
India India

Member

Am a C#.Net, ASP.Net, SQL Server Professional
Intrested in Music, Cricket, and exploring new ideas...

Sign Up to vote   Poor Excellent
Add a reason or comment to your vote: x
Votes of 3 or less require a comment

Comments and Discussions

 
You must Sign In to use this message board. (secure sign-in)
 
Search this forum  
 FAQ
    Noise  Layout  Per page   
  Refresh
Generaldidn't get more.jpeg Pinmembervenkatreddy.s23:57 5 Jun '07  
QuestionHow to set the content in the iframe. Pinmemberqqwwrr19:11 24 Oct '06  
QuestionHow to adjust the paragraph spacing Pinmemberdolls23:11 2 Dec '05  
AnswerRe: How to adjust the paragraph spacing PinmemberDMalave5:11 23 Aug '06  
QuestionImage not found? PinmemberDennis McMahon4:57 2 Oct '05  
AnswerRe: Image not found? PinmemberR. Senthil Kumaran23:48 14 Oct '05  
AnswerRe: Image not found? PinmemberR. Senthil Kumaran23:50 14 Oct '05  
Hope u need to change the probank to your image folder.
 
Loving Code,
R. Senthil Kumaran
QuestionHow to Insert a Table option in this RichText box. PinsussAnonymous0:24 23 Sep '05  
GeneralRich text Box PinsussAnonymous0:22 23 Sep '05  
GeneralQuick Question Pinmemberjordan12347:24 18 Apr '05  
GeneralRe: Quick Question PinmemberR. Senthil Kumaran18:41 21 Apr '05  
GeneralIframe Pinsussvenkat_raman_L0:41 24 Feb '05  
QuestionHow to get the formated text value PinmemberNenita14:22 29 Oct '04  
AnswerRe: How to get the formated text value PinmemberR. Senthil Kumaran17:27 31 Oct '04  
GeneralRe: How to get the formated text value PinmemberNenita2:20 1 Nov '04  
GeneralRe: How to get the formated text value PinmemberR. Senthil Kumaran16:28 1 Nov '04  
GeneralRe: How to get the formated text value Pinmembernseresha19:53 2 Nov '04  
GeneralRe: How to get the formated text value PinmemberR. Senthil Kumaran20:05 2 Nov '04  
GeneralRe: How to get the formated text value Pinmembernseresha0:50 3 Nov '04  
GeneralRe: How to get the formated text value PinmemberR. Senthil Kumaran16:17 3 Nov '04  
GeneralSpellCheck does not work Pinmemberatrancostar12:35 27 Jul '04  
GeneralRe: SpellCheck does not work PinmemberR. Senthil Kumaran22:15 29 Jul '04  
GeneralRe: SpellCheck does not work Pinmembervenguboy17:55 16 Feb '06  
GeneralRe: SpellCheck does not work PinmemberR. Senthil Kumaran0:00 30 Jul '04  
GeneralRe: SpellCheck does not work Pinmembernarendra.kumar15:26 6 Apr '06  

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.

Permalink | Advertise | Privacy | Mobile
Web01 | 2.5.120529.1 | Last Updated 5 Aug 2004
Article Copyright 2004 by R. Senthil Kumaran
Everything else Copyright © CodeProject, 1999-2012
Terms of Use
Layout: fixed | fluid