Hi,
I had hoped to use fckeditor in place of textarea for one specific purpose and it is acting exactly like textarea by placing a new line of some type arbitrarily within the text.
I am using the ReplaceTextArea because I was not able to find a way to use "editor.Value=" with the complex SQL text that I am using. I don't know if it was special characters or the thousands of single and double quotes but no matter what I tried it would not display (the editor just gave up).
I want to be able to display text (SQL actually) and allow the user to copy the text into some other utility or program. I have tried escaping all special characters and that does make it display correctly and it does wrap appropriately but when I copy the text the copy includes the escaped characters rather then the actual characters making the copy/paste useless.
I've been at this about 14 hours and counting and I could really use some help. Here is the basic code that I am using (I sure wish there was a way to preview this because this much text could end up looking all screwed up depending on how friendly the forum editor is...).
//
// This is where we replace all the textarea with fckeditor, this is located within the
// <head> section.
//
<script type="text/javascript">
window.onload = function() {
var editor;
editor = new FCKeditor( 'taCnfTextR18',430,150,ToolbarSet='Basic' ) ;
editor.ReplaceTextarea() ;
}
</script>
//
// This is the original textarea
// All text is on one line (not sure what the forum will do to it
// There are no line breaks of any kind
//
<td align="center" width="400" bgColor="#efd8bf" colSpan="5">
<textarea id="taCnfTextR18" name="taCnfTextR18" cols="69" rows="10" wrap="virtual">SELECT U1.COLL_ID COLL_ID, U1.TEXT_ID TEX<br>T_ID, U1.DISCOVERY_DT DISCOVERY_DT, U1.UPDATE_DT <br> UPDATE_DT, U1.SUM_STAT_DELTA SUM_STAT_DELTA, U1.MAX_STAT_TX<br>T MAX_STAT_TXT, X.SQL_TXT SQL_TXT FROM ( SELE<br>CT /*+ INDEX(X) */ U.COLL_ID COLL_ID, U.TEXT_ID <br> TEXT_ID, TO_CHAR(X.UPDATE_DT,:"SYS_B_00") UPDATE_<br>DT, TO_CHAR(X.TEXT_DT,:"SYS_B_01") DISCOVERY_DT, SUM(U.SUM_STAT_D<br>ELTA) / :"SYS_B_02" SUM_STAT_DELTA, MAX(U.MAX_STAT_TXT) MAX_STA<br>T_TXT FROM ( SELECT /*+ INDEX(F) */ F.COLL_ID COLL_ID, F.<br>TEXT_ID TEXT_ID, SUM(F.STAT_DELTA) SUM_STAT_DELTA, MAX(F.<br>STAT_TXT) MAX_STAT_TXT FROM SQL_FACT05 F WHERE (F.COLL_ID =<br> :"SYS_B_03" AND F.STAT_ID = :"SYS_B_04" AND F.TEXT_ID <br> IN (:"SYS_B_05",:"SYS_B_06",:"SYS_B_07",:"SYS_B_08",:"SYS_B_09"<br>,:"SYS_B_10",:"SYS_B_11",:"SYS_B_12",:"SYS_B_13",:"SYS_B_14") AND<br> F.OBSV_TS BETWEEN TO_DATE(:"SYS_B_15",:"SYS_B_16") AND TO_<br>DATE(:"SYS_B_17",:"SYS_B_18") ) OR (F.COLL_ID = :"SYS_B_1<br>9" AND F.STAT_ID = :"SYS_B_20" AND F.TEXT_ID IN (:"SY<br>S_B_21",:"SYS_B_22",:"SYS_B_23",:"SYS_B_24",:"SYS_B_25",:"SYS_B_2<br>6",:"SYS_B_27",:"SYS_B_28",:"SYS_B_29",:"SYS_B_30") AND F.OBSV_TS<br> BETWEEN TO_DATE(:"SYS_B_31",:"SYS_B_32") AND TO_DATE(:"SYS<br>_B_33",:"SYS_B_34") ) GROUP BY F.COLL_ID, F.TEXT_ID UNION ALL SEL<br>ECT /*+ INDEX(F) */ F.COLL_ID COLL_ID, :"SYS_B_35" <br>TEXT_ID, SUM(F.STAT_DELTA) SUM_STAT_DELTA, MAX(F.STAT_TXT) MAX_ST<br>AT_TXT FROM SQL_FACT05 F WHERE (F.COLL_ID = :"SYS_B_36" AND<br> F.STAT_ID = :"SYS_B_37" AND F.TEXT_ID NOT IN (:"SYS_<br>B_38",:"SYS_B_39",:"SYS_B_40",:"SYS_B_41",:"SYS_B_42",:"SYS_B_43"<br>,:"SYS_B_44",:"SYS_B_45",:"SYS_B_46",:"SYS_B_47") AND F.OBSV_TS <br> BETWEEN TO_DATE(:"SYS_B_48",:"SYS_B_49") AND TO_DATE(:"SYS_B<br>_50",:"SYS_B_51") ) OR (F.COLL_ID = :"SYS_B_52" AND F.STA<br>T_ID = :"SYS_B_53" AND F.TEXT_ID NOT IN (:"SYS_B_54",<br>:"SYS_B_55",:"SYS_B_56",:"SYS_B_57",:"SYS_B_58",:"SYS_B_59",:"SYS<br>_B_60",:"SYS_B_61",:"SYS_B_62",:"SYS_B_63") AND F.OBSV_TS B<br>ETWEEN TO_DATE(:"SYS_B_64",:"SYS_B_65") AND TO_DATE(:"SYS_B_66",:<br>"SYS_B_67") ) GROUP BY F.COLL_ID, :"SYS_B_68" ) U, SQL_TEXT X WH<br>ERE U.SUM_STAT_DELTA > :"SYS_B_69" AND U.TEXT_ID = X.TEXT_ID AND <br>X.COLL_ID = :"SYS_B_70" AND X.TEXT_ID IN (:"SYS_B_71",:"SYS<br>_B_72",:"SYS_B_73",:"SYS_B_74",:"SYS_B_75",:"SYS_B_76",:"SYS_B_77<br>",:"SYS_B_78",:"SYS_B_79",:"SYS_B_80",:"SYS_B_81") GROUP BY U.COL<br>L_ID, U.TEXT_ID, TO_CHAR(X.TEXT_DT,:"SYS_B_82"), TO_CHAR(X.UPDATE<br>_DT,:"SYS_B_83") ) U1, SQL_TEXT X WHERE U1.COLL_ID = X.COLL_ID AN<br>D U1.TEXT_ID = X.TEXT_ID ORDER BY U1.SUM_STAT_DELTA DESC</textarea></font></td>
<script type="text/javascript">
window.onload = function() {
var editor;
editor = new FCKeditor( 'taCnfTextR18',430,150,ToolbarSet='Basic' ) ;
editor.ReplaceTextarea() ;
}
</script>
//
// But when I cut/paste the text it looks like this
// with arbitrary newlines.
//
SELECT U1.COLL_ID COLL_ID, U1.TEXT_ID TEXT T_ID, U1.DISCOVERY_DT DISCOVERY_DT, U1.UPDATE_DT
UPDATE_DT, U1.SUM_STAT_DELTA SUM_STAT_DELTA, U1.MAX_STAT_TX
T MAX_STAT_TXT, X.SQL_TXT SQL_TXT FROM ( SELE
CT /*+ INDEX(X) */ U.COLL_ID COLL_ID, U.TEXT_ID
TEXT_ID, TO_CHAR(X.UPDATE_DT,:"SYS_B_00") UPDATE_
DT, TO_CHAR(X.TEXT_DT,:"SYS_B_01") DISCOVERY_DT, SUM(U.SUM_STAT_D
ELTA) / :"SYS_B_02" SUM_STAT_DELTA, MAX(U.MAX_STAT_TXT) MAX_STA
T_TXT FROM ( SELECT /*+ INDEX(F) */ F.COLL_ID COLL_ID, F.
TEXT_ID TEXT_ID, SUM(F.STAT_DELTA) SUM_STAT_DELTA, MAX(F.
STAT_TXT) MAX_STAT_TXT FROM SQL_FACT05 F WHERE (F.COLL_ID =
:"SYS_B_03" AND F.STAT_ID = :"SYS_B_04" AND F.TEXT_ID
IN (:"SYS_B_05",:"SYS_B_06",:"SYS_B_07",:"SYS_B_08",:"SYS_B_09"
,:"SYS_B_10",:"SYS_B_11",:"SYS_B_12",:"SYS_B_13",:"SYS_B_14") AND
F.OBSV_TS BETWEEN TO_DATE(:"SYS_B_15",:"SYS_B_16") AND TO_
DATE(:"SYS_B_17",:"SYS_B_18") ) OR (F.COLL_ID = :"SYS_B_1
9" AND F.STAT_ID = :"SYS_B_20" AND F.TEXT_ID IN (:"SY
S_B_21",:"SYS_B_22",:"SYS_B_23",:"SYS_B_24",:"SYS_B_25",:"SYS_B_2
6",:"SYS_B_27",:"SYS_B_28",:"SYS_B_29",:"SYS_B_30") AND F.OBSV_TS
BETWEEN TO_DATE(:"SYS_B_31",:"SYS_B_32") AND TO_DATE(:"SYS
_B_33",:"SYS_B_34") ) GROUP BY F.COLL_ID, F.TEXT_ID UNION ALL SEL
ECT /*+ INDEX(F) */ F.COLL_ID COLL_ID, :"SYS_B_35"
TEXT_ID, SUM(F.STAT_DELTA) SUM_STAT_DELTA, MAX(F.STAT_TXT) MAX_ST
AT_TXT FROM SQL_FACT05 F WHERE (F.COLL_ID = :"SYS_B_36" AND
F.STAT_ID = :"SYS_B_37" AND F.TEXT_ID NOT IN (:"SYS_
B_38",:"SYS_B_39",:"SYS_B_40",:"SYS_B_41",:"SYS_B_42",:"SYS_B_43"
,:"SYS_B_44",:"SYS_B_45",:"SYS_B_46",:"SYS_B_47") AND F.OBSV_TS
BETWEEN TO_DATE(:"SYS_B_48",:"SYS_B_49") AND TO_DATE(:"SYS_B
_50",:"SYS_B_51") ) OR (F.COLL_ID = :"SYS_B_52" AND F.STA
T_ID = :"SYS_B_53" AND F.TEXT_ID NOT IN (:"SYS_B_54",
:"SYS_B_55",:"SYS_B_56",:"SYS_B_57",:"SYS_B_58",:"SYS_B_59",:"SYS
_B_60",:"SYS_B_61",:"SYS_B_62",:"SYS_B_63") AND F.OBSV_TS B
ETWEEN TO_DATE(:"SYS_B_64",:"SYS_B_65") AND TO_DATE(:"SYS_B_66",:
"SYS_B_67") ) GROUP BY F.COLL_ID, :"SYS_B_68" ) U, SQL_TEXT X WH
ERE U.SUM_STAT_DELTA > :"SYS_B_69" AND U.TEXT_ID = X.TEXT_ID AND
X.COLL_ID = :"SYS_B_70" AND X.TEXT_ID IN (:"SYS_B_71",:"SYS
_B_72",:"SYS_B_73",:"SYS_B_74",:"SYS_B_75",:"SYS_B_76",:"SYS_B_77
",:"SYS_B_78",:"SYS_B_79",:"SYS_B_80",:"SYS_B_81") GROUP BY U.COL
L_ID, U.TEXT_ID, TO_CHAR(X.TEXT_DT,:"SYS_B_82"), TO_CHAR(X.UPDATE
_DT,:"SYS_B_83") ) U1, SQL_TEXT X WHERE U1.COLL_ID = X.COLL_ID AN
D U1.TEXT_ID = X.TEXT_ID ORDER BY U1.SUM_STAT_DELTA DESC
I had hoped to use fckeditor in place of textarea for one specific purpose and it is acting exactly like textarea by placing a new line of some type arbitrarily within the text.
I am using the ReplaceTextArea because I was not able to find a way to use "editor.Value=" with the complex SQL text that I am using. I don't know if it was special characters or the thousands of single and double quotes but no matter what I tried it would not display (the editor just gave up).
I want to be able to display text (SQL actually) and allow the user to copy the text into some other utility or program. I have tried escaping all special characters and that does make it display correctly and it does wrap appropriately but when I copy the text the copy includes the escaped characters rather then the actual characters making the copy/paste useless.
I've been at this about 14 hours and counting and I could really use some help. Here is the basic code that I am using (I sure wish there was a way to preview this because this much text could end up looking all screwed up depending on how friendly the forum editor is...).
//
// This is where we replace all the textarea with fckeditor, this is located within the
// <head> section.
//
<script type="text/javascript">
window.onload = function() {
var editor;
editor = new FCKeditor( 'taCnfTextR18',430,150,ToolbarSet='Basic' ) ;
editor.ReplaceTextarea() ;
}
</script>
//
// This is the original textarea
// All text is on one line (not sure what the forum will do to it
// There are no line breaks of any kind
//
<td align="center" width="400" bgColor="#efd8bf" colSpan="5">
<textarea id="taCnfTextR18" name="taCnfTextR18" cols="69" rows="10" wrap="virtual">SELECT U1.COLL_ID COLL_ID, U1.TEXT_ID TEX<br>T_ID, U1.DISCOVERY_DT DISCOVERY_DT, U1.UPDATE_DT <br> UPDATE_DT, U1.SUM_STAT_DELTA SUM_STAT_DELTA, U1.MAX_STAT_TX<br>T MAX_STAT_TXT, X.SQL_TXT SQL_TXT FROM ( SELE<br>CT /*+ INDEX(X) */ U.COLL_ID COLL_ID, U.TEXT_ID <br> TEXT_ID, TO_CHAR(X.UPDATE_DT,:"SYS_B_00") UPDATE_<br>DT, TO_CHAR(X.TEXT_DT,:"SYS_B_01") DISCOVERY_DT, SUM(U.SUM_STAT_D<br>ELTA) / :"SYS_B_02" SUM_STAT_DELTA, MAX(U.MAX_STAT_TXT) MAX_STA<br>T_TXT FROM ( SELECT /*+ INDEX(F) */ F.COLL_ID COLL_ID, F.<br>TEXT_ID TEXT_ID, SUM(F.STAT_DELTA) SUM_STAT_DELTA, MAX(F.<br>STAT_TXT) MAX_STAT_TXT FROM SQL_FACT05 F WHERE (F.COLL_ID =<br> :"SYS_B_03" AND F.STAT_ID = :"SYS_B_04" AND F.TEXT_ID <br> IN (:"SYS_B_05",:"SYS_B_06",:"SYS_B_07",:"SYS_B_08",:"SYS_B_09"<br>,:"SYS_B_10",:"SYS_B_11",:"SYS_B_12",:"SYS_B_13",:"SYS_B_14") AND<br> F.OBSV_TS BETWEEN TO_DATE(:"SYS_B_15",:"SYS_B_16") AND TO_<br>DATE(:"SYS_B_17",:"SYS_B_18") ) OR (F.COLL_ID = :"SYS_B_1<br>9" AND F.STAT_ID = :"SYS_B_20" AND F.TEXT_ID IN (:"SY<br>S_B_21",:"SYS_B_22",:"SYS_B_23",:"SYS_B_24",:"SYS_B_25",:"SYS_B_2<br>6",:"SYS_B_27",:"SYS_B_28",:"SYS_B_29",:"SYS_B_30") AND F.OBSV_TS<br> BETWEEN TO_DATE(:"SYS_B_31",:"SYS_B_32") AND TO_DATE(:"SYS<br>_B_33",:"SYS_B_34") ) GROUP BY F.COLL_ID, F.TEXT_ID UNION ALL SEL<br>ECT /*+ INDEX(F) */ F.COLL_ID COLL_ID, :"SYS_B_35" <br>TEXT_ID, SUM(F.STAT_DELTA) SUM_STAT_DELTA, MAX(F.STAT_TXT) MAX_ST<br>AT_TXT FROM SQL_FACT05 F WHERE (F.COLL_ID = :"SYS_B_36" AND<br> F.STAT_ID = :"SYS_B_37" AND F.TEXT_ID NOT IN (:"SYS_<br>B_38",:"SYS_B_39",:"SYS_B_40",:"SYS_B_41",:"SYS_B_42",:"SYS_B_43"<br>,:"SYS_B_44",:"SYS_B_45",:"SYS_B_46",:"SYS_B_47") AND F.OBSV_TS <br> BETWEEN TO_DATE(:"SYS_B_48",:"SYS_B_49") AND TO_DATE(:"SYS_B<br>_50",:"SYS_B_51") ) OR (F.COLL_ID = :"SYS_B_52" AND F.STA<br>T_ID = :"SYS_B_53" AND F.TEXT_ID NOT IN (:"SYS_B_54",<br>:"SYS_B_55",:"SYS_B_56",:"SYS_B_57",:"SYS_B_58",:"SYS_B_59",:"SYS<br>_B_60",:"SYS_B_61",:"SYS_B_62",:"SYS_B_63") AND F.OBSV_TS B<br>ETWEEN TO_DATE(:"SYS_B_64",:"SYS_B_65") AND TO_DATE(:"SYS_B_66",:<br>"SYS_B_67") ) GROUP BY F.COLL_ID, :"SYS_B_68" ) U, SQL_TEXT X WH<br>ERE U.SUM_STAT_DELTA > :"SYS_B_69" AND U.TEXT_ID = X.TEXT_ID AND <br>X.COLL_ID = :"SYS_B_70" AND X.TEXT_ID IN (:"SYS_B_71",:"SYS<br>_B_72",:"SYS_B_73",:"SYS_B_74",:"SYS_B_75",:"SYS_B_76",:"SYS_B_77<br>",:"SYS_B_78",:"SYS_B_79",:"SYS_B_80",:"SYS_B_81") GROUP BY U.COL<br>L_ID, U.TEXT_ID, TO_CHAR(X.TEXT_DT,:"SYS_B_82"), TO_CHAR(X.UPDATE<br>_DT,:"SYS_B_83") ) U1, SQL_TEXT X WHERE U1.COLL_ID = X.COLL_ID AN<br>D U1.TEXT_ID = X.TEXT_ID ORDER BY U1.SUM_STAT_DELTA DESC</textarea></font></td>
<script type="text/javascript">
window.onload = function() {
var editor;
editor = new FCKeditor( 'taCnfTextR18',430,150,ToolbarSet='Basic' ) ;
editor.ReplaceTextarea() ;
}
</script>
//
// But when I cut/paste the text it looks like this
// with arbitrary newlines.
//
SELECT U1.COLL_ID COLL_ID, U1.TEXT_ID TEXT T_ID, U1.DISCOVERY_DT DISCOVERY_DT, U1.UPDATE_DT
UPDATE_DT, U1.SUM_STAT_DELTA SUM_STAT_DELTA, U1.MAX_STAT_TX
T MAX_STAT_TXT, X.SQL_TXT SQL_TXT FROM ( SELE
CT /*+ INDEX(X) */ U.COLL_ID COLL_ID, U.TEXT_ID
TEXT_ID, TO_CHAR(X.UPDATE_DT,:"SYS_B_00") UPDATE_
DT, TO_CHAR(X.TEXT_DT,:"SYS_B_01") DISCOVERY_DT, SUM(U.SUM_STAT_D
ELTA) / :"SYS_B_02" SUM_STAT_DELTA, MAX(U.MAX_STAT_TXT) MAX_STA
T_TXT FROM ( SELECT /*+ INDEX(F) */ F.COLL_ID COLL_ID, F.
TEXT_ID TEXT_ID, SUM(F.STAT_DELTA) SUM_STAT_DELTA, MAX(F.
STAT_TXT) MAX_STAT_TXT FROM SQL_FACT05 F WHERE (F.COLL_ID =
:"SYS_B_03" AND F.STAT_ID = :"SYS_B_04" AND F.TEXT_ID
IN (:"SYS_B_05",:"SYS_B_06",:"SYS_B_07",:"SYS_B_08",:"SYS_B_09"
,:"SYS_B_10",:"SYS_B_11",:"SYS_B_12",:"SYS_B_13",:"SYS_B_14") AND
F.OBSV_TS BETWEEN TO_DATE(:"SYS_B_15",:"SYS_B_16") AND TO_
DATE(:"SYS_B_17",:"SYS_B_18") ) OR (F.COLL_ID = :"SYS_B_1
9" AND F.STAT_ID = :"SYS_B_20" AND F.TEXT_ID IN (:"SY
S_B_21",:"SYS_B_22",:"SYS_B_23",:"SYS_B_24",:"SYS_B_25",:"SYS_B_2
6",:"SYS_B_27",:"SYS_B_28",:"SYS_B_29",:"SYS_B_30") AND F.OBSV_TS
BETWEEN TO_DATE(:"SYS_B_31",:"SYS_B_32") AND TO_DATE(:"SYS
_B_33",:"SYS_B_34") ) GROUP BY F.COLL_ID, F.TEXT_ID UNION ALL SEL
ECT /*+ INDEX(F) */ F.COLL_ID COLL_ID, :"SYS_B_35"
TEXT_ID, SUM(F.STAT_DELTA) SUM_STAT_DELTA, MAX(F.STAT_TXT) MAX_ST
AT_TXT FROM SQL_FACT05 F WHERE (F.COLL_ID = :"SYS_B_36" AND
F.STAT_ID = :"SYS_B_37" AND F.TEXT_ID NOT IN (:"SYS_
B_38",:"SYS_B_39",:"SYS_B_40",:"SYS_B_41",:"SYS_B_42",:"SYS_B_43"
,:"SYS_B_44",:"SYS_B_45",:"SYS_B_46",:"SYS_B_47") AND F.OBSV_TS
BETWEEN TO_DATE(:"SYS_B_48",:"SYS_B_49") AND TO_DATE(:"SYS_B
_50",:"SYS_B_51") ) OR (F.COLL_ID = :"SYS_B_52" AND F.STA
T_ID = :"SYS_B_53" AND F.TEXT_ID NOT IN (:"SYS_B_54",
:"SYS_B_55",:"SYS_B_56",:"SYS_B_57",:"SYS_B_58",:"SYS_B_59",:"SYS
_B_60",:"SYS_B_61",:"SYS_B_62",:"SYS_B_63") AND F.OBSV_TS B
ETWEEN TO_DATE(:"SYS_B_64",:"SYS_B_65") AND TO_DATE(:"SYS_B_66",:
"SYS_B_67") ) GROUP BY F.COLL_ID, :"SYS_B_68" ) U, SQL_TEXT X WH
ERE U.SUM_STAT_DELTA > :"SYS_B_69" AND U.TEXT_ID = X.TEXT_ID AND
X.COLL_ID = :"SYS_B_70" AND X.TEXT_ID IN (:"SYS_B_71",:"SYS
_B_72",:"SYS_B_73",:"SYS_B_74",:"SYS_B_75",:"SYS_B_76",:"SYS_B_77
",:"SYS_B_78",:"SYS_B_79",:"SYS_B_80",:"SYS_B_81") GROUP BY U.COL
L_ID, U.TEXT_ID, TO_CHAR(X.TEXT_DT,:"SYS_B_82"), TO_CHAR(X.UPDATE
_DT,:"SYS_B_83") ) U1, SQL_TEXT X WHERE U1.COLL_ID = X.COLL_ID AN
D U1.TEXT_ID = X.TEXT_ID ORDER BY U1.SUM_STAT_DELTA DESC
RE: ReplaceTextArea inserts invalid newline
My original SQL text does not, and I do not want any changes to my SQL text at all, no line breaks, no paragraphs, etc. when it is placed into the fckeditor, at least as it relates to cut/paste.
So maybe the real question that I could have asked much more simply is:
THE REAL QUESTION
How do I get SQL text from a variable into fckeditor and then allow a user to copy/paste that text from fckeditor without any formatting changes from the original variable?
Thanks again.
RE: ReplaceTextArea inserts invalid newline