1

nicEditを使用して、リッチ テキスト編集をテキストエリアに追加しています。Codeigniter MVC フレームワークと jQuery を使用して単純な AJAX 呼び出しを行い、新しいテキストエリアを作成し、AJAX 呼び出しから返されたら、この新しいテキストエリアに nicEdit を適用しています。すべてが期待どおりに機能し、nicEdit は次のコードを使用して期待どおりにインスタンス化されます。

<html>

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
<script type="text/javascript" src="<? echo base_url();?>assets/js/nicEdit.js"></script>

<body>
<div id="area1"></div>
<input id="submit" type="submit" value="submit" />

<script>
$(document).ready(function() {

    $('#submit').click(function(){
        $.ajax
        ({
            type: "POST",
            url: "test/ajax",
            success: function(html)
            {
                $('#area1').html(html);
                new nicEditor().panelInstance('newArea');
            }
        });
    });
});
</script>

</body>
</html>

送信ボタンのクリック イベントから呼び出される te​​st/ajax コントローラーは、次のように新しいテキストエリアを返す関数です。

    function ajax()
    {
        echo "<textarea id='newArea'></textarea>";
    }

私の主なアプリケーションでは、概念的には上記と同じことを行っています。つまり、AJAX 呼び出しから新しいテキストエリアを返し、AJAX 成功関数でこの新しい領域をインスタンス化しています。私が抱えている問題は、nicEdit が AJAX 呼び出しからこの新しいテキストエリアにフックしても、nicEdit アイコンが表示されないことです。フォント形式、フォント ファミリ、およびフォント サイズの属性は表示され、機能しますが、その他のアイコン (太字、斜体、下線など) は表示されません。

提案を歓迎します。

4

1 に答える 1

1

アイコンファイルの場所を明示的に指定する必要があると思います。nicEditor オブジェクトをインスタンス化するときに構成辞書を渡すことで、これを行うことができます: NicEdit 構成オプション

于 2011-08-15T01:15:20.740 に答える