我希望只有在#contact_email
验证后才能运行screenCheck功能。但在我的情况下,它在那之前运行。我该如何纠正呢?
<script>
function screenCheck() {
var screenWidth = window.screen.width;
if (screenWidth == '1024') {
$('#textAreaMsg label.error').css('margin-left', '99px');
}
}
$(document).ready(function() {
$("#contact_email").validate(screenCkeck());
</script>
答案 0 :(得分:3)
尝试在没有()
$("#contact_email").validate(screenCheck);
另请注意,您的功能称为screenCheck
,而不是screenCkeck
答案 1 :(得分:1)
除了@F。 Calderan提到,我想你的
$(document).ready(function() {
$("#contact_email").validate(screenCkeck());
需要关闭)};
喜欢
$(document).ready(function() {
$("#contact_email").validate(screenCheck);
}); // need closing
答案 2 :(得分:0)
假设您正在使用JQuery validator plugin,则需要将回调作为选项映射的一部分传递。例如,要在表单被视为无效后运行回调,您可以这样写:
$("#contact_email").validate({
invalidHandler: screenCheck
});
submitHandler 和/或 showErrors 处理程序也是如此。要处理这三个,你可以这样写:
$("#contact_email").validate({
invalidHandler: screenCheck,
submitHandler: submitCallback,
showErrors: showErrorsCallback
});