たとえば、これは私が入力したものです:
_sdf
42342
xxcv
_
.code()
はそれを_sdf<br>42342<br>xxcv
_に変換します
または別のもの:
_[{"_type":"ServerOperation","operationType":"ANNOUNCE"}]
_
なった
_<span class="message_content">[{"_type":"ServerOperation","operationType":"ANNOUNCE"}]</span>
_
純粋な/プレーンテキストを取得する方法?
質問の上位2つの回答のいずれかを適用できます JavaScript:HTMLタグを文字列から削除する方法? 、.code()
の後にタグを削除します。
ReactiveRavenの答え(1行に保つ)は私にとってうまくいきます:
_cleanText = $("#summernote").code().replace(/<\/?[^>]+(>|$)/g, "");
_
たとえば、_[{"_type":"ServerOperation","operationType":"ANNOUNCE"}]
_の場合:
$("#summernote").code()
は戻ります
_
<p>[{"_type":"ServerOperation","operationType":"ANNOUNCE"}]<br></p>
_
$("#summernote").code().replace(/<\/?[^>]+(>|$)/g, "")
は戻ります
_
[{"_type":"ServerOperation","operationType":"ANNOUNCE"}]
_
タグなし。
キャリッジリターンを保持する場合は、リンクされた質問で指定されたソリューションを適用する前に、_</p>
_と_<br>
_を_\n
_に置き換えることができます。
_$("#summernote").code()
.replace(/<\/p>/gi, "\n")
.replace(/<br\/?>/gi, "\n")
.replace(/<\/?[^>]+(>|$)/g, "");
_
これを試してください:
var plainText = $($("#summernote").code()).text()
[〜#〜] edit [〜#〜]:新しいバージョンでは、代わりにこれを使用する必要があります。
var plainText = $($("#summernote").summernote("code")).text()
これを使用できます
var code = $("#editor").code();
var text = code.replace(/<p>/gi, " ");
var plainText= $("<div />").html(text).text();
テキストエリアにコンテンツがあるかどうかを確認する必要がありました。これはトリックをしました:
現在のサマーノートバージョン(8):
$($("#summernote").summernote('code').replace(/ |<br>/g, ' ')).text().trim() == ''
私の古いバージョンでは:
$($("#summernote").code().replace(/ |<br>/g, ' ')).text().trim() == ''
新しいバージョン
var contents = $('#summernote').summernote('code');
var plainText = $("<p>" + contents+ "</p>").text();
ダミータグの追加
フォーマットの不足を解決します。
これを試して :)
$('#summernote').summernote ('code', '<b> hello world </ b>');