0

iframe 要素を作成するフォームで bootstrap-wysihtml5 エディターを使用しています。

<iframe class="wysihtml5-sandbox" width="0" height="0" frameborder="0" security="restricted" allowtransparency="true" marginwidth="0" marginheight="0" name="for_nod" src="#" style="display: inline-block; background-color: rgb(255, 255, 255); border-collapse: separate; border-color: rgb(204, 204, 204); border-style: solid; border-width: 1px; clear: none; float: none; margin: 0px 0px 10px; outline: 0px none rgb(0, 0, 0); outline-offset: 0px; padding: 4px 6px; position: static; top: auto; left: auto; right: auto; bottom: auto; z-index: auto; vertical-align: middle; text-align: start; -moz-box-sizing: content-box; box-shadow: 0px 1px 1px 0px rgba(0, 0, 0, 0.075) inset; border-radius: 4px 4px 4px 4px; width: 750px; height: 300px;">
<html>
    <head>
    <meta charset="UTF-8">
    <link href="/js/plug-ins/bootstrap-wysihtml5/rtl/rtl-editor.css" rel="stylesheet">
    <style type="text/css">
    </head>
    <body class="wysihtml5-editor" contenteditable="true" spellcheck="true" style="background-color: rgb(255, 255, 255); color: rgb(85, 85, 85); cursor: text; font-family: "Helvetica Neue",Helvetica,Arial,sans-serif; font-size: 14px; font-style: normal; font-variant: normal; font-weight: 400; line-height: 20px; letter-spacing: normal; text-align: start; text-decoration: none; text-indent: 0px; text-rendering: optimizelegibility; word-break: normal; word-wrap: break-word; word-spacing: 0px;">
        simple text
        <br>
    </body>
</html>
</iframe>

Nod 検証プラグインを使用して、iframe 内の body 要素が空でないことを検証する必要があります。

問題は、Nod 検証プラグインがオブジェクトではなく要素の検証ルールを設定するために jquery セレクター TEXT を受け入れることです - $("iframe").content().find("body") を使用して iframe オブジェクトを取得できますが、検証ロジックはうまくいかない。

iframe の検証を手動で処理するために送信ボタンのonclickイベント ハンドラーを設定しようとしましたが、問題は、Nod で使用されるルールがパスした場合、カスタム検証関数が true または false の値を返した場合に効果がないことでした。

とにかくこの問題を回避するには?

4

1 に答える 1