jQuery“ each()”函数是否同步?

赛义德·纳马蒂(Saeed Neamati)

考虑此方案以进行验证:

function validateForm (validCallback) {
   $('#first-name').add($('#last-name')).add($('#address')).each(function () {
      // validating fields and adding 'invalid' class to invalid fields.
   });
   // doing validation this way for almost 50 fields (loop over 50 fields)
   if ($('#holder .invalid').length == 0) {
       // submitting data here, only when all fields are validated.
   }
}

现在,我的问题是,在循环结束之前执行if块。我希望的主体validateForm可以同步执行,但是jQueryeach()函数似乎可以异步执行。我对吗?为什么这不起作用?

亚伯拉罕

是的,jQueryeach方法是同步的。几乎所有的JavaScript都是同步的。唯一的例外是AJAX,计时器(setTimeoutsetInterval)和HTML5 Web Worker。
您的问题可能在代码中的其他地方。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章