使用JavaScript仅验证可见选项卡

使用JavaScript仅验证可见选项卡,javascript,validation,Javascript,Validation,我正在使用VB.NET IF语句设置网站的三个可见或不可见选项卡 我需要一种方法来确保这些选项卡上控件的JavaScript验证代码仅在选项卡可见时执行。我认为验证(一堆if语句)必须进入另一个if 差不多 if (code here to check whether tabs are visible) { if { validation takes place here } } 有人能告诉我如何使用JavaScript检查选项卡是否可见吗 我对.NET一无所知。因此,我将在此解决方案

我正在使用VB.NET IF语句设置网站的三个可见或不可见选项卡

我需要一种方法来确保这些选项卡上控件的JavaScript验证代码仅在选项卡可见时执行。我认为验证(一堆if语句)必须进入另一个if

差不多

if (code here to check whether tabs are visible) {
    if { validation takes place here }
}

有人能告诉我如何使用JavaScript检查选项卡是否可见吗

我对.NET一无所知。因此,我将在此解决方案中假设一些情况,包括您正在使用jquery:

$('.tab:visible').each(function(index, tab){
   // run vals on $(tab) or tab
});
或者,如果您已经在每个选项卡的循环中:

if($(tab).is(':visible')){
 // validate(tab)
}
------没有jQuery------

假设您将类
hidden
添加到选项卡以隐藏它。html(简化)可能如下所示:

<body>
  <div class='tab'>Hello</div>
  <div class='tab'>World</div>
  <div class='tab hidden'>Mind Blown</div>
</body>

你好
世界
神魂颠倒
然后JS:

var tab, tabs, _i, _len;

// Get an array of elements with class `tab`
tabs = document.getElementsByClassName('tab');

// Loop through the array of tabs and assign `tab` to be current tab
for (_i = 0, _len = tabs.length; _i < _len; _i++) {
  tab = tabs[_i];
  // Check if `tab` has the class `hidden` in which case we will NOT perform our check
  if (tab.className.indexOf('hidden') === -1) {
    // Perform the check
    console.log('do check');
  }
}
var选项卡,选项卡,\u i,\u len;
//获取具有类`tab的元素数组`
tabs=document.getElementsByClassName('tab');
//循环遍历选项卡数组,并将'tab'指定为当前选项卡
对于(_i=0,_len=tabs.length;_i<_len;_i++){
tab=tabs[_i];
//检查'tab'是否隐藏了类'hidden',在这种情况下,我们将不执行检查
if(tab.className.indexOf('hidden')=-1){
//进行检查
console.log('do check');
}
}

@user3604558如果您至少发布一部分html和javascript,这会很方便,但既然您没有发布,我将做另一个假设:您为选项卡分配一个类以隐藏它们
。隐藏
。我将把这一点补充到答案中。