2

特定の電子メール テンプレートを使用して複数のメッセージを生成するアプリケーションを作成しています。

電子メール パーサーは正常に動作します。RazorEngine を使用して電子メール テンプレートを作成しています。

問題は、次の構成 (単純な foreach) を使用してテーブルを生成する必要があることです。

<table>
<tbody>
<tr><th>Pedido</th><th>NF</th><th>Boleto</th><th>Vencimento</th><th>Valor</th></tr>
@foreach (dynamic item in Model.PagamentosEmAtraso) {
<tr>
<td valign="top" width="76">
<p align="center"><span style="font-size: small;">@item.NumeroPedido</span></p>
</td>
<td valign="top" width="60">
<p align="center"><span style="font-size: small;">@item.NumeroNotaFiscal</span></p>
</td>
<td valign="top" width="88">
<p align="center"><span style="font-size: small;">@item.NumeroBoleto</span></p>
</td>
<td valign="top" width="128">
<p align="center"><span style="font-size: small;">@item.DataVencimento.ToString("dd/MM/yyyy")</span></p>
</td>
<td valign="top" width="119">
<p align="center"><span style="font-size: small;">@item.ValorLiquido.ToString("C2") </span></p>
</td>
</tr>
}
</tbody>
</table>

HTMLエディターを終了すると、tinymceがコードを台無しにし、次のようにコードを「修正」します。

@foreach (dynamic item in Model.PagamentosEmAtraso) {}
<table>

これは、新しいバージョンの tinymce で発生している問題です。以前は、この種のマークアップを受け入れていました。

tinymce が壊れている可能性のある html を修正せずに受け入れるようにする実行可能な解決策はありますか?

私のtinymce構成は次のとおりです。

function initializeTinyMce() {
    $('textarea.tinymce').tinymce({
        // Location of TinyMCE script
        script_url: '/Scripts/tinymce/tiny_mce.js',

        // General options
        theme: "advanced",
        plugins:  " pa geb reak,legacyoutput,style,layer,table,save,advimage,advlink,emotions,iespell,inlinepopups,preview,media,searchreplace,print,c  o nt extmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template",
        width: "960",
        height: "500",
        entity_encoding: "raw",


        // Theme options
        theme_advanced_buttons1:  " bo ld, italic,underline,strikethrough,sub,sup,|,justifyleft,justifycenter,justifyright,justifyfull,styleselect,formatselect,fontse  l ec t,fontsizeselect",
        theme_advanced_buttons2:  " cu t,c opy,paste,pastetext,pasteword,|,bullist,numlist,|,outdent,indent,|,undo,redo,|,link,unlink,image,cleanup,help,code,|,insert  d at e,inserttime,preview,|,forecolor,backcolor",
        theme_advanced_buttons3: "tablecontrols,|,hr,removeformat,visualaid,||,fullscreen",
        theme_advanced_toolbar_location: "top",
        theme_advanced_toolbar_align: "left",
        theme_advanced_statusbar_location: "bottom",
        theme_advanced_resizing: true,

        // Example content CSS (should be your site CSS)
        //content_css: "/Content/site.css",

        // Drop lists for link/image/media/template dialogs
        template_external_list_url: "lists/template_list.js",
        external_link_list_url: "lists/link_list.js",
        external_image_list_url: "lists/image_list.js",
        media_external_list_url: "lists/media_list.js",

        // Replace values for the template plugin
        template_replace_values: {
            username: "Some User",
            staffid: "991234"
        }           
    });
 }
4

1 に答える 1

0

3.4 以降、構成設定を使用して tinymce バリデーターをオフにすることはできなくなりました。html は有効である必要がありますが、tinymce バリデーターによって有効として受け入れられるものとそうでないものを定義できます。tinymce 構成パラメーターの valid_elments と valid_children を詳しく見てください。

于 2013-02-20T16:14:23.100 に答える