Hi....i am now doing the e-book authoring tools...but i have face the problem...i wan to do a "save function" that can save as any type of file. But in my coding only can save as html and text file.. Beside that, i also wan do "open file function". I wan open the file which i save into my authoring tools and edit it again...but i don know how to do it....Please help me....thanks!!
Following is my coding:

<HTML>
<HEAD>
<title>HTML Area by Sameers </title>
</HEAD>
<body>
<Style>
.EditControl {
width:500px;
height:300px; }
.tblTable {
width : 500px;
height: 30px;
border:0;
cellspacing:0;
cellpadding:0;
background-color:#A78C5C;
}
.butClass {
width:22;
height:22;
border: 0px solid;
border-color: #D6D3CE ;
background-color:#A78C5C;
}
.tdClass {
padding-left: 0px;
padding-top:0px;
background-Color: #A78C5C; }
</Style>
<Script Language="javascript">
function doCommand(ctrl)
{
//BackColor
var mCommand, uInterface, vValue;
switch(ctrl.id)
{
case 'imgSuperScript' :
mCommand = 'superscript';
uInterface = false;
vValue = null;
break;
case 'imgSubScript' :
mCommand = 'subscript';
uInterface = false;
vValue = null;
break;
case 'imgBold' :
mCommand = 'bold';
uInterface = false;
vValue = null;
break;
case 'imgItalic' :
mCommand = 'italic';
uInterface = false;
vValue = null;
break;
case 'imgBoldItalic' :
doCommand (document.all)
doCommand (document.all)
doCommand (document.all)
break;
case 'imgUnderLine' :
mCommand = 'underline';
uInterface = false;
vValue = null;
break;
case 'imgStrikeThrough' :
mCommand = 'strikethrough';
uInterface = false;
vValue = null;
break;
case 'imgAlignLeft' :
mCommand = 'justifyleft';
uInterface = false;
vValue = null;
break;
case 'imgAlignRight' :
mCommand = 'justifyright';
uInterface = false;
vValue = null;
break;
case 'imgAlignCenter' :
mCommand = 'justifycenter';
uInterface = false;
vValue = null;
break;
case 'imgAlignJustify' :
mCommand = 'justifyfull';
uInterface = false;
vValue = null;
break;
case 'imgCut' :
mCommand = 'cut';
uInterface = false;
vValue = null;
break;
case 'imgCopy' :
mCommand = 'copy';
uInterface = false;
vValue = null;
break;
case 'imgPaste' :
mCommand = 'paste';
uInterface = false;
vValue = null;
break;
case 'imgImage' :
//Note that if we set UserInterface to true and vValue to null, then
//A Dialogue will appear asking for Image location.
mCommand = 'insertimage';
uInterface = true;
vValue = null;
break;
case 'imgLink' :
mCommand = 'createlink';
uInterface = true;
vValue = null;
break;
case 'imgLine' :
mCommand = 'inserthorizontalrule';
uInterface = false;
vValue = null;
break;
case 'imgUndo' :
alert ('undo'); mCommand = 'undo';
uInterface = false;
vValue = null;
break;
case 'imgRedo' :
mCommand = 'redo';
uInterface = false;
vValue = null;
break;
case 'imgOrderList' :
mCommand = 'insertorderedlist';
uInterface = false;
vValue = null;
break;
case 'imgUnOrderList' :
mCommand = 'insertunorderedlist';
uInterface = false;
vValue = null;
break;
case 'imgOutdent' :
mCommand = 'outdent';
uInterface = false;
vValue = null;
break;
case 'imgIndent' :
mCommand = 'indent';
uInterface = false;
vValue = null;
break;
case 'lstStyle' :
mCommand = 'formatblock';
vValue = ctrl.options[ctrl.selectedIndex].value ;
uInterface = false;
break;
case 'lstFontSize' :
mCommand = 'fontsize';
vValue = ctrl.options[ctrl.selectedIndex].value ;
uInterface = false;
break;
case 'lstFont' :
mCommand = 'fontname';
vValue = ctrl.options[ctrl.selectedIndex].value ;
uInterface = false;
break;
case 'lstColor' :
mCommand = 'forecolor';
vValue = ctrl.options[ctrl.selectedIndex].value ;
uInterface = false;
break;
case 'imgDelete' :
mCommand = 'delete';
vValue = null;
uInterface = false;
break;
case 'imgPrint' :
mCommand = 'delete';
vValue = null;
uInterface = true;
break;
case 'imgSave' :
mCommand = 'saveas';
vValue = null;
uInterface = true;
break;
case 'imgCustom' :
var temp = table2.style.display;
if (temp == 'none')
{
var mTemp1 = myRTF.document.body.innerText;
table1.style.display = 'inline';
table2.style.display = 'inline';
myRTF.document.body.innerHTML = mTemp1;
}
else
{
//First Set the HTMLText in the TextBox
var mTemp = myRTF.document.body.innerHTML;
table1.style.display = 'none';
table2.style.display = 'none';
myRTF.document.body.innerText = mTemp;
}
break;
case 'imgFontColor' :
var oldcolor = GetEditBoxColor('forecolor');
mCommand = 'forecolor';
uInterface = false;
vValue = GetColorFromUser(oldcolor);
break;
case 'imgHighLight' :
var oldcolor = GetEditBoxColor('backcolor');
mCommand = 'backcolor';
uInterface = false;
vValue = GetColorFromUser(oldcolor);
break;
case 'imgSpecialChar' :
alert ('Special Characters will be provided soon.');
return;
break;
case 'imgSmile' :
var posX = event.screenX;
var posY = event.screenY + 20;
var screenW = screen.width; // screen size
var screenH = screen.height - 20; // take taskbar into account
//if (posX + 232 > screenW) { posX = posX - 232 - 40; } // if mouse too far right
//if (posY + 164 > screenH) { posY = posY - 164 - 80; } // if mouse too far down
var wPosition = 'dialogLeft:' +posX+ '; dialogTop:' +posY;
var newimage = showModalDialog('Smiles.html', '',
'dialogWidth:110px; dialogHeight: 140px; '
+ 'resizable: no; help: no; status: no; scroll: no; '
+ wPosition);
if (newimage == null) return; newimage = 'icons/smiles' + '/' + newimage;
mCommand = 'insertimage';
vValue = newimage;
uInterface = false;
break;
break ;
case 'imgAbout' :
alert ('HTML Area. Created by Sameers (theAngrycodeR)');
break;
}
myRTF.focus ();
myRTF.document.execCommand (mCommand, uInterface, vValue);
myRTF.focus ();
}
function GetColorFromUser(oldcolor)
{
var posX = event.screenX;
var posY = event.screenY + 20;
var screenW = screen.width; // screen size
var screenH = screen.height - 20; // take taskbar into account
if (posX + 232 > screenW) { posX = posX - 232 - 40; } // if mouse too far right
if (posY + 164 > screenH) { posY = posY - 164 - 80; } // if mouse too far down
var wPosition = 'dialogLeft:' +posX+ '; dialogTop:' +posY;
var newcolor = showModalDialog('ColorPicker.html', oldcolor,
'dialogWidth:238px; dialogHeight: 187px; '
+ 'resizable: no; help: no; status: no; scroll: no; '
+ wPosition);
return newcolor
}
function GetEditBoxColor(colorCommand)
{
return DecimalToRGB(myRTF.document.queryCommandValue(colorCommand));
}
function DecimalToRGB(value) {
var hex_string = '';
for (var hexpair = 0; hexpair < 3; hexpair++) {
var byte = value & 0xFF; // get low byte
value >>= 8; // drop low byte
var nybble2 = byte & 0x0F; // get low nybble (4 bits)
var nybble1 = (byte >> 4) & 0x0F; // get high nybble
hex_string += nybble1.toString(16); // convert nybble to hex
hex_string += nybble2.toString(16); // convert nybble to hex
}
return hex_string.toUpperCase();
}
</Script>
<Script Language="javascript">
function selDown(ctrl)
{
ctrl.style.backgroundColor = '#A78C5C';
}
function selUp(ctrl)
{
ctrl.style.backgroundColor = '#A78C5C';
}
</Script>
<Script Language="javascript">
function selOff(ctrl)
{
var mImage ;
switch(ctrl.id)
{
case 'imgCuston' :
mImage = 'customtag_off.gif';
break;
case 'imgAbout' :
mImage = 'about_off.gif';
break;
case 'imgBold' :
mImage = 'bold_off.gif';
break;
case 'imgItalic' :
mImage = 'italic_off.gif';
break;
case 'imgBoldItalic' :
mImage = 'bolditalicunderline_off.gif';
break;
case 'imgSuperScript' :
mImage = 'superscript_off.gif'
break;
case 'imgSubScript' :
mImage = 'subscript_off.gif'
break;
case 'imgSpecialChar' :
mImage = 'specialchars_off.gif'
break;
case 'imgSave':
mImage = 'save_off.gif'
break;
case 'imgUnderLine' :
mImage = 'underline_off.gif';
break;
case 'imgStrikeThrough' :
mImage = 'strikethrough_off.gif';
break;
case 'imgAlignLeft' :
mImage = 'alignleft_off.gif';
break;
case 'imgAlignRight' :
mImage = 'alignright_off.gif';
break;
case 'imgAlignCenter' :
mImage = 'aligncenter_off.gif';
break;
case 'imgAlignJustify' :
mImage = 'alignjustify_off.gif';
break;
case 'imgCut' :
mImage = 'cut_off.gif';
break;
case 'imgCopy' :
mImage = 'copy_off.gif';
break;
case 'imgPaste' :
mImage = 'paste_off.gif';
break;
case 'imgImage' :
mImage = 'image_off.gif';
break;
case 'imgLink' :
mImage = 'link_off.gif';
break;
case 'imgLine' :
mImage = 'line_off.gif';
break;
case 'imgUndo' :
mImage = 'undo_off.gif';
break;
case 'imgRedo' :
mImage = 'redo_off.gif';
break;
case 'imgOrderList' :
mImage = 'orderedlist_off.gif';
break;
case 'imgUnOrderList' :
mImage = 'unorderedlist_off.gif';
break;
case 'imgOutdent' :
mImage = 'outdent_off.gif';
break;
case 'imgIndent' :
mImage = 'indent_off.gif';
break;
case 'imgHighLight' :
mImage = 'highlight_off.gif';
break;
case 'imgFontColor' :
mImage = 'fontcolor_off.gif';
break;
case 'imgCustom' :
mImage = 'customtag_off.gif';
break;
default :
mImage = ctrl.src;
}
var mNewImage = new Image();
mNewImage.src = 'icons/' + mImage ;
if (! (mImage == ctrl.src) )
ctrl.src = mNewImage.src;
}
</Script>
<Script Language="javascript">
function selOn(ctrl) {
var mImage
switch(ctrl.id)
{
case 'imgCuston' :
mImage = 'customtag_over.gif';
break;
case 'imgAbout' :
mImage = 'about_over.gif';
break;
case 'imgBold' :
mImage = 'bold_over.gif';
break;
case 'imgItalic' :
mImage = 'italic_over.gif';
break;
case 'imgBoldItalic' :
mImage = 'bolditalicunderline_over.gif';
break;
case 'imgUnderLine' :
mImage = 'underline_over.gif';
break;
case 'imgStrikeThrough' :
mImage = 'strikethrough_over.gif';
break;
case 'imgSpecialChar' :
mImage ='specialchars_over.gif'
break;
case 'imgSuperScript' :
mImage = 'superscript_over.gif'
break;
case 'imgSubScript' :
mImage = 'subscript_over.gif'
break;
case 'imgSave':
mImage = 'save_over.gif'
break;
case 'imgAlignLeft' :
mImage = 'alignleft_over.gif';
break;
case 'imgAlignRight' :
mImage = 'alignright_over.gif';
break;
case 'imgAlignCenter' :
mImage = 'aligncenter_over.gif';
break;
case 'imgAlignJustify' :
mImage = 'alignjustify_over.gif';
break;
case 'imgCut' :
mImage = 'cut_over.gif';
break;
case 'imgCopy' :
mImage = 'copy_over.gif';
break;
case 'imgPaste' :
mImage = 'paste_over.gif';
break;
case 'imgImage' :
mImage = 'image_over.gif';
break;
case 'imgLink' :
mImage = 'link_over.gif';
break;
case 'imgLine' :
mImage = 'line_over.gif';
break;
case 'imgUndo' :
mImage = 'undo_over.gif';
break;
case 'imgRedo' :
mImage = 'redo_over.gif';
break;
case 'imgOrderList' :
mImage = 'orderedlist_over.gif';
break;
case 'imgUnOrderList' :
mImage = 'unorderedlist_over.gif';
break;
case 'imgOutdent' :
mImage = 'outdent_over.gif';
break;
case 'imgIndent' :
mImage = 'indent_over.gif';
break;
case 'imgHighLight' :
mImage = 'highlight_over.gif';
break;
case 'imgFontColor' :
mImage = 'fontcolor_over.gif';
break;
case 'imgCustom' :
mImage = 'customtag_over.gif';
break;
default :
mImage = ctrl.src;
}
var mNewImage = new Image();
mNewImage.src = 'icons/' + mImage ;
if (! (mImage == ctrl.src) )
ctrl.src = mNewImage.src;
ctrl.style.cursor = 'hand';
}
</Script>
<TABLE border="0" ID="Table1">
<TR>
<TD>
<TABLE id="Table2" class="tblTable">
<TR>
<td class="tdClass"><img ID="imgSave" alt="Save" name="imgSave" class="butClass" src="icons/save_off.gif"
onMouseOver="selOn(this)" onMouseOut="selOff(this)" onMouseDown="selDown(this)" onMouseUp="selUp(this)"
onClick="doCommand(this)"></td>
<td class="tdClass"><img ID="imgUndo" alt="Undo" name="imgUndo" class="butClass" src="icons/undo_off.gif"
onMouseOver="selOn(this)" onMouseOut="selOff(this)" onMouseDown="selDown(this)" onMouseUp="selUp(this)"
onClick="doCommand(this)"></td>
<td class="tdClass"><img ID="imgRedo" alt="Redo" name="imgRedo" class="butClass" src="icons/redo_off.gif"
onMouseOver="selOn(this)" onMouseOut="selOff(this)" onMouseDown="selDown(this)" onMouseUp="selUp(this)"
onClick="doCommand(this)"></td>
<td class="tdClass"><img ID="imgSubScript" alt="Subscript" name="imgSubScript" class="butClass" src="icons/subscript_off.gif"
onMouseOver="selOn(this)" onMouseOut="selOff(this)" onMouseDown="selDown(this)" onMouseUp="selUp(this)"
onClick="doCommand(this)"></td>
<td class="tdClass"><img ID="imgSuperScript" alt="SuperScript" name="imgSuperScript" class="butClass" src="icons/superscript_off.gif"
onMouseOver="selOn(this)" onMouseOut="selOff(this)" onMouseDown="selDown(this)" onMouseUp="selUp(this)"
onClick="doCommand(this)"></td>
<td class="tdClass"><img ID="imgOrderList" alt="Ordered List" name="imgOrderList" class="butClass" src="icons/orderedlist_off.gif"
onMouseOver="selOn(this)" onMouseOut="selOff(this)" onMouseDown="selDown(this)" onMouseUp="selUp(this)"
onClick="doCommand(this)"></td>
<td class="tdClass"><img ID="imgUnOrderList" alt="Unordered List" name="imgUnOrderList" class="butClass"
src="icons/unorderedlist_off.gif" onMouseOver="selOn(this)" onMouseOut="selOff(this)" onMouseDown="selDown(this)"
onMouseUp="selUp(this)" onClick="doCommand(this)"></td>
<td class="tdClass"><img alt="Outdent" ID="imgOutdent" name="imgOutdent" class="butClass" src="icons/outdent_off.gif"
onMouseOver="selOn(this)" onMouseOut="selOff(this)" onMouseDown="selDown(this)" onMouseUp="selUp(this)"
onClick="doCommand(this)"></td>
<td class="tdClass"><img alt="Indent" ID="imgIndent" name="imgIndent" class="butClass" src="icons/indent_off.gif"
onMouseOver="selOn(this)" onMouseOut="selOff(this)" onMouseDown="selDown(this)" onMouseUp="selUp(this)"
onClick="doCommand(this)"></td>
<td class="tdClass"> <!-- Insert the Style List -->
<select id="lstStyle" onChange="doCommand(this);" NAME="lstStyle">
<option value="paragraph">Paragraph</option>
<option value="Heading 1">H1</option>
<option value="Heading 2">H2</option>
<option value="Heading 3">H3</option>
<option value="Heading 4">H4</option>
<option value="Heading 5">H5</option>
<option value="Heading 6">H6</option>
<option value="Heading 7">H7</option>
</select>
</td>
<td class="tdClass">
<Select id="lstFont" name="lstFont" onChange="doCommand(this);">
<option value="Arial">Arial</option>
<option value="Courier">Courier</option>
<option value="Sans Serif">Sans Serif</option>
<option value="Tahoma">Tahoma</option>
<option value="Verdana">Verdana</option>
<option value="Wingdings">Wingdings</option>
</Select>
</td>
<td class="tdClass">
<select id="lstFontSize" onChange="doCommand(this);" NAME="lstFontSize">
<option value="1">Very Small</option>
<option value="2">Small</option>
<option value="3">Medium</option>
<option value="4">Large</option>
<option value="5">Larger</option>
<option value="6">Very Large</option>
<option value="7">Extra Large</option>
</select>
</td>
</TR>
</TABLE>
</TD>
</TR>
<TR>
<TD class="tdClass">
<TABLE id="Table3" class="tblTable">
<TR>
<TD class="tdClass">
<td class="tdClass"><img ID="imgBold" alt="Bold" name="imgBold" class="butClass" src="icons/bold_off.gif"
onMouseOver="selOn(this)" onMouseOut="selOff(this)" onMouseDown="selDown(this)" onMouseUp="selUp(this)"
onClick="doCommand(this)"></td>
<td class="tdClass"><img ID="imgItalic" alt="Italic" name="imgItalic" class="butClass" src="icons/italic_off.gif"
onMouseOver="selOn(this)" onMouseOut="selOff(this)" onMouseDown="selDown(this)" onMouseUp="selUp(this)"
onClick="doCommand(this)"></td>
<td class="tdClass"><img ID="imgUnderLine" alt="Underline" name="imgUnderLine" class="butClass" src="icons/underline_off.gif"
onMouseOver="selOn(this)" onMouseOut="selOff(this)" onMouseDown="selDown(this)" onMouseUp="selUp(this)"
onClick="doCommand(this)"></td>
<td class="tdClass"><img ID="imgBoldItalic" alt="Bold Italic UnderLine" name="imgBoldItalic" class="butClass"
src="icons/bolditalicunderline_off.gif" onMouseOver="selOn(this)" onMouseOut="selOff(this)" onMouseDown="selDown(this)"
onMouseUp="selUp(this)" onClick="doCommand(this)"></td>
<td class="tdClass"><img ID="imgStrikeThrough" alt="Strike Trhough" name="imgStrikeThrough" class="butClass"
src="icons/strikethrough_off.gif" onMouseOver="selOn(this)" onMouseOut="selOff(this)" onMouseDown="selDown(this)"
onMouseUp="selUp(this)" onClick="doCommand(this)"></td>
<td class="tdClass"><img src="icons/separator.gif"></td>
<td class="tdClass"><img ID="imgAlignLeft" alt="Left Align" name="imgAlignLeft" class="butClass" src="icons/alignleft_off.gif"
onMouseOver="selOn(this)" onMouseOut="selOff(this)" onMouseDown="selDown(this)" onMouseUp="selUp(this)"
onClick="doCommand(this)"></td>
<td class="tdClass"><img ID="imgAlignCenter" alt="Center Align" name="imgAlignCenter" class="butClass" src="icons/aligncenter_off.gif"
onMouseOver="selOn(this)" onMouseOut="selOff(this)" onMouseDown="selDown(this)" onMouseUp="selUp(this)"
onClick="doCommand(this)"></td>
<td class="tdClass"><img ID="imgAlignRight" alt="Right Align" name="imgAlignRight" class="butClass" src="icons/alignright_off.gif"
onMouseOver="selOn(this)" onMouseOut="selOff(this)" onMouseDown="selDown(this)" onMouseUp="selUp(this)"
onClick="doCommand(this)"></td>
<td class="tdClass"><img ID="imgAlignJustify" alt="Justify" name="imgAlignJustify" class="butClass" src="icons/alignjustify_off.gif"
onMouseOver="selOn(this)" onMouseOut="selOff(this)" onMouseDown="selDown(this)" onMouseUp="selUp(this)"
onClick="doCommand(this)"></td>
<td class="tdClass"><img src="icons/separator.gif"></td>
<td class="tdClass"><img ID="imgCut" alt="Cut" name="imgCut" class="butClass" src="icons/cut_off.gif" onMouseOver="selOn(this)"
onMouseOut="selOff(this)" onMouseDown="selDown(this)" onMouseUp="selUp(this)" onClick="doCommand(this)"></td>
<td class="tdClass"><img ID="imgCopy" alt="Copy" name="imgCopy" class="butClass" src="icons/copy_off.gif"
onMouseOver="selOn(this)" onMouseOut="selOff(this)" onMouseDown="selDown(this)" onMouseUp="selUp(this)"
onClick="doCommand(this)"></td>
<td class="tdClass"><img ID="imgPaste" alt="Paste" name="imgPaste" class="butClass" src="icons/paste_off.gif"
onMouseOver="selOn(this)" onMouseOut="selOff(this)" onMouseDown="selDown(this)" onMouseUp="selUp(this)"
onClick="doCommand(this)"></td>
<td class="tdClass"><img ID="imgSpecialChar" alt="Special Character" name="imgSpecialChar" class="butClass"
src="icons/specialchars_off.gif" onMouseOver="selOn(this)" onMouseOut="selOff(this)" onMouseDown="selDown(this)"
onMouseUp="selUp(this)" onClick="doCommand(this)"></td>
<td class="tdClass"><img src="icons/separator.gif"></td>
<td class="tdClass"><img ID="imgImage" alt="Insert Image" name="imgImage" class="butClass" src="icons/image_off.gif"
onMouseOver="selOn(this)" onMouseOut="selOff(this)" onMouseDown="selDown(this)" onMouseUp="selUp(this)"
onClick="doCommand(this)"></td>
<td class="tdClass"><img ID="imgLink" alt="Hyper Link" name="imgLink" class="butClass" src="icons/link_off.gif"
onMouseOver="selOn(this)" onMouseOut="selOff(this)" onMouseDown="selDown(this)" onMouseUp="selUp(this)"
onClick="doCommand(this)"></td>
<td class="tdClass"><img ID="imgLine" alt="Insert Line" name="imgLine" class="butClass" src="icons/line_off.gif"
onMouseOver="selOn(this)" onMouseOut="selOff(this)" onMouseDown="selDown(this)" onMouseUp="selUp(this)"
onClick="doCommand(this)"></td>
<td class="tdClass"><img ID="imgFontColor" alt="Text Color" name="imgFontColor" class="butClass" src="icons/fontcolor_off.gif"
onMouseOver="selOn(this)" onMouseOut="selOff(this)" onMouseDown="selDown(this)" onMouseUp="selUp(this)"
onClick="doCommand(this)"></td>
<td class="tdClass"><img ID="imgHighLight" alt="Highlight Color" name="imgHighLight" class="butClass" src="icons/highlight_off.gif"
onMouseOver="selOn(this)" onMouseOut="selOff(this)" onMouseDown="selDown(this)" onMouseUp="selUp(this)"
onClick="doCommand(this)"></td>
<td class="tdClass"><img ID="imgSmile" alt="Insert Smiles" name="imgSmile" class="butClass" src="icons/1.gif"
onMouseOver="selOn(this)" onMouseOut="selOff(this)" onMouseDown="selDown(this)" onMouseUp="selUp(this)"
onClick="doCommand(this)"></td>
</TR>
</TABLE>
</TD>
</TR>
<TR>
<TD class="tdClass">
<TABLE id="Table4" class="tblTable">
<TR>
<TD class="tdClass">
<IFrame name="myRTF" ID="myRTF" class="EditControl"></IFrame>
</TD>
</TR>
<TR>
<td align="right" class="tdClass">
<img alt="HTML View" ID="imgCustom" name="imgCustom" class="butClass" src="icons/customtag_off.gif"
onMouseOver="selOn(this)" onMouseOut="selOff(this)" onMouseDown="selDown(this)" onMouseUp="selUp(this)"
onClick="doCommand(this)"> <img alt="About" ID="imgAbout" name="imgAbout" class="butClass" src="icons/about_off.gif"
onMouseOver="selOn(this)" onMouseOut="selOff(this)" onMouseDown="selDown(this)" onMouseUp="selUp(this)" onClick="doCommand(this)">
</td>
</TR>
</TABLE>
</TD>
</TR>
</TABLE>
</TD> </TR> </TABLE>
<script>
//Set the IFRame to Desing Mode.
myRTF.document.designMode='on';
</script>
</body>
</HTML>

Are you trying to save any kind of file to the user's computer? That is a very serious security breach, and it should not be alllowed.

For this reason, most browsers and servers do not allow it.

or if i save as html file. Is it i can open it into the authoring tools and edit it?

i wan do the open file function. which means that when i open a html file from desktop, it can be retrieve into the frame in my system and let me do edit it. erm...this authoring system actually a bit like microsoft word. can save then must be can open back to edit again. now the problem is i cannot open the file i save into the authoring system...

This is something which can't be done remotely.

If it's a local disk you are working, what you are probably not doing is refreshing the disk directory into your program's list after you make a change.

This article has been dead for over six months. Start a new discussion instead.