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 正在工作。有人可以帮我解决这个问题吗????

4

1 回答 1

3

我敢打赌,igValidator 很难附加到表单提交事件,因为您在文档片段(通过 jQuery)中创建了尚未在 DOM 中的编辑器,更不用说在要绑定的表单中了。简单的解决方案 - 如果您坚持通过 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 回答