JavaScript/jQuery动态创建对象并绑定事件和方法
我们经常会遇到动态创建element对象,但是临时创建出来的对象并不在document.ready作用域内,如果这时候我们要绑定一些第三方库的事件是不会生效的,这时候我们需要一个新的方法“DOMNodeInserted”来实现。
以jQuery验证表单插件Validation为例,动态添加验证规则rules:
$(document).on('DOMNodeInserted','.card-body',function(){
var $form = $(this).find("form.formNewTopic");
$form.validate();
setTimeout(function() {
$form.find("input[name='title']").rules("add",{
required: true,
minlength: 10,
messages: {
required: "标题不能为空",
minlength: "标题字符数至少是 {0} 位",
}
});
}, 0);
});