1

WYMeditorから2つのtextareaの値を取得したいと思います。

最初の1つ:

<script type="text/javascript">
 jQuery(function() {
    $(" .wymeditor").wymeditor({
     logoHtml: '',
     lang: 'fr',
     skin: 'default',
    });
 });
</script>

そして2番目のもの:

<script type="text/javascript">
 jQuery(function() {
  $(" .wymeditor_ref").wymeditor({
     logoHtml: '',
     lang: 'fr',
     skin: 'silver',
  });
 });
</script>

HTML:

<textarea id="definition" class="wymeditor" name="definition"/></textarea>
<textarea id="references_definitions" class="wymeditor_ref" name="definition"/></textarea>

私はこれを使用しています:WYMeditor.INSTANCES [0] .html();

しかし、問題は、テキストエリアが2つある場合の方法がわからないことです。2番目の値を取得するにはどうすればよいですか?

どうもありがとう!!

4

1 に答える 1

0

既知の順序で特定の WYMeditor インスタンス HTML を取得する

特定のページのすべての WYMeditor インスタンスの結果を単純に反復したい場合は、配列インデックス メソッドで問題ありません。WYMeditor インスタンスが作成される順序がわかっている場合は、次のようにします。

var wymResults,
    wymRefResults;

wymResults = WYMeditor.INSTANCES[0].xhtml();
wymRefResults = WYMeditor.INSTANCES[1].xhtml();

すべての WYMeditor インスタンスから HTML を取得する

WYMeditor のインスタンス数が不明な場合は、次のようにしてすべての結果を取得できます。

var results = [],
    i;
for (i = 0; i < WYMeditor.INSTANCES.length; i++) {
    // Do something with the xhtml results
    results.push(WYMeditorINSTANCES[i].xhtml());
}

インスタンス化順序が不明な特定の HTML 結果を取得する

ただし、どの WYMeditor インスタンスを取得するかが重要な場合は (よくあることですが)、作成時に特定のインスタンスへの参照を保存する必要があります。例えば。

var wym,
    wymRef,
    wymResults,
    wymRefResults;

// Instantiate my WYMeditor instances
wym = $(".wymeditor").wymeditor();
wymRef = $(".wymeditor_ref").wymeditor();

// Let's grab the results. This will probably live in some kind of `submit()` handler.
wymResults = wym.xhtml();
wymRefResults = wymRef.xhtml();

を使用し、使用xhtml()しないhtml()

例に固有の別の注意事項ですが、xhtml()呼び出しの代わりにhtml()呼び出しを使用して、一貫性のあるクロスブラウザーのマークアップを確保する必要があります。

このhtml()呼び出しは、パーサーを介して結果の HTML を実行したり、ブラウザー固有のクリーンアップを実行したりしません。つまり、Chrome で作成された IE9 などで HTML をロードする場合、html()変更を加えずに呼び出すだけで、結果としてHTML は若干異なります。異なるブラウザーでは、一貫した編集エクスペリエンスを提供するためにわずかに異なる HTML が必要です。WYMeditor は、ユーザーxhtml()が結果を取得するために使用すると想定して、これを抽象化します。

于 2012-08-13T18:22:14.807 に答える