Javascript 放置错误,请选择2

Javascript 放置错误,请选择2,javascript,jquery,jquery-validate,jquery-select2,Javascript,Jquery,Jquery Validate,Jquery Select2,保存包含一个或多个select2的表单时,我遇到放置错误的问题 这里是我所拥有的:我有一些带有一些强制select2输入的表单,它们可以很好地使用jQuery Validate显示错误,但我想要的是html在保存表单时跳转到select2并显示错误。当前,提交处理程序可以跳转到除选择器之外的任何其他元素。我最终覆盖了无效的处理程序并调用select2的id: invalidHandler:函数(表单、验证器){ var errors=validator.numberOfInvalids(); 如

保存包含一个或多个select2的表单时,我遇到放置错误的问题


这里是我所拥有的:我有一些带有一些强制select2输入的表单,它们可以很好地使用jQuery Validate显示错误,但我想要的是html在保存表单时跳转到select2并显示错误。当前,提交处理程序可以跳转到除选择器之外的任何其他元素。

我最终覆盖了无效的处理程序并调用select2的id:

invalidHandler:函数(表单、验证器){
var errors=validator.numberOfInvalids();
如果(错误){
if($(validator.errorList[0].element.).is(“:可见”))
{
$('html,body')。设置动画({
scrollTop:$(validator.errorList[0].元素).offset().top
}, 100);
}
其他的
{
$('html,body')。设置动画({
scrollTop:$(“#s2id”+$(validator.errorList[0].element).attr(“id”).offset().top
}, 100);
}
}
}

使用相同的jQuery验证程序,只需移动错误

$("#your_id").change(function(e) {
   let id_error = `#${$(this).attr('id')}-error`
   if(!$(this).valid()) {
      $(id_error).detach().appendTo($('.select2-container').first())
   }
})

即使你已经发布了答案,你仍然需要让你的问题独立。换言之,没有相关代码的任何人都无法回答这个问题。谢谢。我同意。提前谢谢!