【问题标题】:New Function: How to iterate through all form elements before returning true or false新功能:如何在返回 true 或 false 之前遍历所有表单元素
【发布时间】:2011-03-20 09:40:39
【问题描述】:

我有一个新函数,当按下表单的提交按钮时我将调用它。我正在尝试使用此验证,而不是插件来获得经验。
在退出函数之前,我将如何遍历所有表单,确定它们是否都有效。虽然如果它们都有效,则返回 true 并继续,否则如果为 false,则留在 isFormValid 函数中,直到所有表单都有效。有什么想法吗?

这是我到目前为止所得到的。

function isFormValid() {

var valid = false;

$('form :input').each(function() {

 var input = $(this);
 label = $(input).prev();

 if (!$.trim(input.val()).length) {
   label.effect('pulsate', { times : 1 }, 400).addClass('required');
   $(":input[value='']:not(.nofocus):visible:enabled:first").focus();
   valid = false;
 }
 else if (input.attr('id') == 'email') {
  if (!isValidEmailAddress(input.val())) {
     label.effect('pulsate', { times : 1 }, 400).addClass('invalid')
     input.val('');
     $(":input[value='']:not(.nofocus):visible:enabled:first").focus();
     valid = false;
   }
  }
 });
}

谢谢

【问题讨论】:

    标签: jquery validation forms function return


    【解决方案1】:

    有了更多选择,何不试试这个form validation plugin..

    【讨论】:

      【解决方案2】:

      知道了。只需在每次迭代之外添加它并更改原始 var valid = true

      if (!valid) {
          return false;
      }
      else
          return true;
      

      【讨论】:

      • 你可以写return valid;。和上面的代码意思一样。
      • 好吧,为此,你可以return valid; ;)
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-09-12
      • 2013-10-19
      • 2011-01-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-27
      相关资源
      最近更新 更多