1

これが私がhtmlページを持っているシナリオです

<form id="form">

<table id="formtable">
 <tr>
 <td id="label1">
 <td id="editor1">
 </tr> 

 <tr>
 <td id="label2">
 <td id="editor2">
 </tr> 

</table>

<input type="button" value="Save" id="save"/>

</form>

スクリプト側で、テーブル要素を宣言して追加しています

var label1 = document.createElement('label');
var input1 = $('<input id="txt1"/>');

var label2 = document.createElement('label');
var input2 = $('<input id="txt2"/>');

label1.innerHTML = "First Name";
label2.innerHTML = "Last Name";   

$(input1).igEditor({
                width: 140,
                required:true,
                validatorOptions: 
                             {
                            onchange: false,
                            formSubmit: true,                            
                             }
            });

$(input2).igEditor({
                width: 140,
                required:true,
                validatorOptions: 
                             {
                            onchange: false,
                            formSubmit: true,                            
                             }
            });
$("#label1").append(label1);
$("#label2").append(label2);
$("#editor1").append(input1);
$("#editor2").append(input2);

保存をクリックすると、コードを次のように書いています

$('#save').click(function () {
         $('#form').submit();

});

ただし、フォーム送信時に検証エラー メッセージが表示されず、フォームが送信されます。onchange や onblur などの他の検証は機能しています。誰でもこのplzで私を助けることができますか????

4

1 に答える 1

3

igValidator がフォーム送信イベントにアタッチするのに苦労することは間違いありません。これは、バインド先のフォーム内は言うまでもなく、まだ DOM 内にないドキュメント フラグメント (jQuery 経由) 内にエディターを作成するためです。ただし、簡単な解決策 - JS を介して入力を作成する場合は、igEditors を初期化する前にそれらを添付します。

フィドル: http://jsfiddle.net/damyanpetev/U9SJP/

$("#label1").append(label1);
$("#label2").append(label2);

$(input1).igEditor({
    width: 140,
    required: true,
    validatorOptions: {
        onchange: true,
        formSubmit: true
    }
});

個別に処理される別の送信オプション (送信タイプの入力タグを使用) があることを思い出してください。エディター オプションの動作に関する非常に精巧なサンプルがあります

于 2013-08-27T14:50:08.330 に答える