79

textareaにCodemirrorのプラグインを使用していますが、textareaの値を取得できません。

コード:

var editor = CodeMirror.fromTextArea(document.getElementById("code"), {
    lineNumbers: true,
    matchBrackets: true,
    mode: "text/x-csrc"
  });


function showCode()
{
    var text = editor.mirror.getCode();
    alert(text);
}

エラーが表示されています:

editor.getCode() is not a function.
4

6 に答える 6

104

getValue()の代わりに使用してみてくださいgetCode()

オプションの引数をgetValue(separator)に渡して、行を区切るために使用する文字列を指定します(デフォルトは\n)。

于 2012-04-23T18:07:24.887 に答える
43

これは私にとってはうまくいきます。

editor.getValue()
于 2013-11-28T13:54:11.943 に答える
6

your_editor_instance.getValue();を使用します。

getCode()CodeMirrorにはその名前で名前が付けられた関数がないため、正常に機能します。

値の設定にはyour_editor_instance.setValue();

于 2017-05-12T13:43:01.280 に答える
2

バージョン:5

ドキュメントによると、あなたは今それを次のようにする必要があります:

doc.getValue(?separator: string) → string

したがって、この例では:

editor.getDoc().getValue("\n")

于 2019-01-28T12:54:01.997 に答える
2

あなたが使用していることは知っていますがtextarea、このコードが他の人にも役立つことを願っています!私はこの問題を抱えていますが、articleタグがあります。これは、jqueryですべてのコードを取得するための私の解決策です。

res_array = []
$.each($('article.code-draft span[role="presentation"]'), function(){
    res_array.push($(this).text())
});
console.log(res_array.join('\n'))
于 2019-03-20T17:55:04.487 に答える
1

これは、CodeMirrorテキスト領域で返されたテキストをキャプチャしようとしているC++Seleniumインスタンスで機能します。

var myText = this.WebDriver.ExecuteJavaScript<string>("return $editor[0].getValue()");

[0]フォームのコードミラーテキスト領域のインデックスはどこにありますか。

于 2021-04-01T14:03:24.777 に答える