ボタン/リンクをクリックするだけでjqueryを使用してckeditortextareaをクリアするにはどうすればよいですか?
私はこれを試しました:$("textarea.editor").val('');
と$("textarea.editor1").val('');
PHPでエディター$ckeditor->editor('editor1', $nDetails);
を初期化するときにこの行があるため、最後に1を付けて試しました
どんな助けでも大歓迎です。
<p>Details:
<?php
// Helper function for this sample file.
function printNotFound( $ver )
{
static $warned;
if (!empty($warned))
return;
echo '<p><br><strong><span class="error">Error</span>: '.$ver.' not found</strong>. ' .
'This sample assumes that '.$ver.' (not included with CKFinder) is installed in ' .
'the "ckeditor" sibling folder of the CKFinder installation folder. If you have it installed in ' .
'a different place, just edit this file, changing the wrong paths in the include ' .
'(line 57) and the "basePath" values (line 70).</p>' ;
$warned = true;
}
include_once '../ckeditor/ckeditor.php' ;
require_once '../ckfinder/ckfinder.php' ;
// This is a check for the CKEditor class. If not defined, the paths in lines 57 and 70 must be checked.
if (!class_exists('CKEditor'))
{
printNotFound('CKEditor');
}
else
{
$initialValue = $pageContent;
$ckeditor = new CKEditor( ) ;
$ckeditor->basePath = '../ckeditor/' ;
// Just call CKFinder::SetupCKEditor before calling editor(), replace() or replaceAll()
// in CKEditor. The second parameter (optional), is the path for the
// CKFinder installation (default = "/ckfinder/").
CKFinder::SetupCKEditor( $ckeditor, '/ckfinder/' ) ;
$ckeditor->editor('editor1', $nDetails);
}
?></p>
CKEDITOR.instances.editor1.setData('');
ここで、editor1はCKEDITORフィールドのIDです。
以下のコードは、ckeditortextareaの値をクリアします。これは4.4バージョンでも機能します。
CKEDITOR.instances['content'].setData('');
コンテンツは、特定のテキスト領域のIDです。
役立つかもしれません。
_function CKupdate(){
for ( instance in CKEDITOR.instances ){
CKEDITOR.instances[instance].updateElement();
}
CKEDITOR.instances[instance].setData('');
}
$.ajax({
url: $('#CommunicationForm').attr("action"),
type: $('#CommunicationForm').attr("method"),
data: $('#CommunicationForm').serialize(),
success: function (e) {
if (e.error) {
alert(e.error);
} else {
//Doing Clear here
CKupdate();
}
},
error: function (jqXHR, Status, text) {
alert("error! " + text);
}
});
_
CKEditorのテキストをクリアしたい場合は、CKupdate()
関数を呼び出します。
私のコードでは、プログラムでckeditorのテキストを変更する必要がありましたが、遅延セットを実行するまで機能しませんでした。これは役立つかもしれません。
_.defer(function () {
it._controls.wysiwyg.setData(bodyText); // by the direct reference
//CKEDITOR.instances.editor1.setData(''); // or this way like in the example
});