Click here to Skip to main content
Click here to Skip to main content

Fully JavaScript Enabled Editor

, 7 Sep 2010 CPOL
Rate this:
Please Sign up or sign in to vote.
Fully JavaScript enabled editor which also contains some server coding


  1. Editor


  2. Inserting Links


  3. Inserting Images


  4. Inserting Table


  5. Inserting Special Characters



Well, I have tried a fully JavaScript enabled editor. Here I have updated it with more features.


In the article, I am giving sample code. The full code is available in the zip file.

I have planned to release this editor as a product with more advanced features. So as of now for demo purposes, I have shown inserting links, images, table and special characters. All other features like inserting flash, media files, templates, saving templates and inserting all major HTML controls and context menu for the editor and for the controls and browser compatibility and handling postback events will be available in the licensed version.

Setting Color

function setColor(colorTo,x,y)
    editFrame.document.execCommand(colorTo,true, colorArray[x][y]); = "none";

Setting Font

function setFont(fontName)
    editFrame.document.execCommand("FontName", false, fontName); = "none";

Setting Font Size

function setFontSize(fontSize)
    editFrame.document.execCommand("FontSize", false, fontSize); = "none";

Setting General Action

function doAction(action)
    if(action == "ClearAll")
        action = "Delete";

Showing Dialog Boxes

function showDialog(link,w, h)//380, 125
    if(link == "li")
        link = "InsertLink.htm";
    else if(link == "sc")
        link = "SpecialChars.htm";
    var returnedTxt= showModalDialog(link,"", "dialogWidth:"+ 
		w +"px; dialogHeight:"+ h +"px; status:no; center:yes");
        var theRange = editFrame.document.selection.createRange();

Showing Popup Windows

var cWnd;
function showInsertPopup(opt, w, h) // w=350, h=340
    var srcfile = "imgWindow.aspx";
    if(opt == "im")
        srcfile = "imgWindow.aspx";
    else if(opt == "tb")
        srcfile = "InsertTable.htm";
    var left = (window.screen.width - parseInt(w))/2;
    var top = (window.screen.height - parseInt(h))/2;
    cWnd =,"", "width="+ w +",height="+ 
	h +",location=no, status=no, top="+ top +", left="+ left);

Setting HTML Action

function doHtmlAction(atype)
    var selectedRegion = editFrame.document.selection.createRange();
    if(atype == "lower")
        selectedRegion.text = selectedRegion.text.toLowerCase();
    else if(atype == "upper")
        selectedRegion.text = selectedRegion.text.toUpperCase();

Points of Interest

  • Since Undo and Redo are again included
  • Also developed in VB.NET and PHP
  • Bugs in Font Size, Font Family, Forecolor, Backcolor are fixed


Thank you. I expect feedback from you, and you expect more from me.


This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


About the Author

No Biography provided

Comments and Discussions

QuestionCan you provide more property for each control?? PinmemberJLKEngine00827-Nov-08 23:24 
Can you provide more property for each control?,
I hope you can provide this function, each control may have itself property, you can provide a infowindow to modify the basic property, such as windth, height, etc.
you can reference :
boxover is very good ,you can use it provide a infowindow to modify the basic property.

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
Web04 | 2.8.1411023.1 | Last Updated 7 Sep 2010
Article Copyright 2008 by Saleth Prakash
Everything else Copyright © CodeProject, 1999-2014
Layout: fixed | fluid