以下を使用して、ckEditor からデータベースに送信しています。
CKEDITOR.instances.editor1.updateElement().document.getBody().getText();
私のデータは、完全に次のようなhtmlコードとしてデータベースに保存されています:
<ol>
<li>test text</li>
</ol>
データベースからそれを取得しようとすると、順序付けられたリストではなく、保存された方法で html タグが表示されます。同じことが他のフォーマットでも起こっています。
私も使用getData()
してみましたが、同じ結果になります。
値を送信する場合:
var editor = CKEDITOR.replace('addque', {
focus: onFocus, blur: onBlur, toolbar : [ ['Cut','Copy','Paste','PasteText','PasteFromWord','-','Print',> 'SpellChecker', 'Scayt'], ['Undo','Redo'], ['Bold','Italic','Underline','Strike','-','Subscript','Superscript'], ['NumberedList','BulletedList','-','Outdent','Indent','Blockquote'], ['JustifyLeft','JustifyCenter','JustifyRight','JustifyBlock'], ['Link','Unlink','Anchor', 'Image', 'Smiley'], ['Table','HorizontalRule','SpecialChar'], ['Format','BGColor'] ], width: "80em", height: "7em", enterMode : CKEDITOR.ENTER_BR, shiftEnterMode: CKEDITOR.ENTER_P }); editor.on("instanceReady", function(){ this.document.on("keyup", fe_jq); }); editor.on('blur', function(){ modified = true; CKEDITOR.instances.addque.updateElement().document.getBody().getText(); }); function fe_jq() { var len = CKEDITOR.instances.addque.document.getBody().getText(); var textLen = len.length; if(textLen > 30){ alert(len); } }
取得する場合:
`イテレータ iterator = queList.iterator();
int iRow = 1;
boolean f = false;
while(iterator.hasNext())
{
String queString = (String)iterator.next();
String que = queArray[1];}
`
<%=que%>
<%=que%> は pre タグの中にあり、ここでは印刷されません。
問題は半分解決しました。前に出力文字列を pre & xmp タグ内に配置しました。そのため、文字列を div タグに入れると問題が解決しました。
まだ残っている問題は、順序付きリストにデータを挿入すると、出力がリストにならないことです。2 つの異なる行にデータを表示するだけです。