javascript中针对多个屏幕的单选按钮验证
我正在寻找一些关于如何在多个屏幕上验证单选按钮并使脚本可重用的帮助。我已经通过使用单个类$('.radio\u validate')使其工作。但是,如果我想在任何其他页面上重复使用该脚本,我必须复制该脚本,这并不理想。(我对JS不是非常熟悉,因此非常感谢对此的支持。) 下面是单选按钮验证的具体代码。基本上,如果未选中,则添加错误类;如果选中,则删除错误类。理想情况下,我希望将$('.radio\u validate')制作成可以重用的东西javascript中针对多个屏幕的单选按钮验证,javascript,Javascript,我正在寻找一些关于如何在多个屏幕上验证单选按钮并使脚本可重用的帮助。我已经通过使用单个类$('.radio\u validate')使其工作。但是,如果我想在任何其他页面上重复使用该脚本,我必须复制该脚本,这并不理想。(我对JS不是非常熟悉,因此非常感谢对此的支持。) 下面是单选按钮验证的具体代码。基本上,如果未选中,则添加错误类;如果选中,则删除错误类。理想情况下,我希望将$('.radio\u validate')制作成可以重用的东西 if( $('.radio_validate').is(
if( $('.radio_validate').is(':visible') && !$('.radio_validate').is(':checked') ){
$('.radio_validate')
.closest('.form__item')
.addClass('error');
shakeCurrentCard( $('.radio_validate').closest('.step') );
//return false;
}
else {
$('.radio_validate')
.closest('.form__item')
.removeClass('error');
}
如果您计划对每个单选按钮进行验证,无论页面如何,请使用:
$(“输入[type='radio'])
但是,如果不希望验证所有单选按钮,则向要验证的收音机添加类或数据属性是最佳选择
在收音机中循环播放,而不是一次全部播放:
$("input[type='radio']").each(function() {
if ($(this).is(':visible') && !$(this).is(':checked')) {
$(this)
.closest('.form__item')
.addClass('error');
shakeCurrentCard($(this).closest('.step'));
//return false;
} else {
$(this)
.closest('.form__item')
.removeClass('error');
}
});
嘿,感谢您在@imvain2中的输入,我以前确实尝试过该方法$(“input[type='radio']),但结果是一次验证了所有单选按钮。(我使用一个html文件来显示多张卡片,每张卡片都会问一个问题和一些单选按钮。也许你可以解释一下如何添加类或数据属性来分别验证单选按钮?@Jason L,对于类,我指的是你已经在做的事情。将类添加到你想要的单选按钮中quired@JasonL我更新了我的答案,我想你的问题是你没有循环使用它们。@imavin2,我设置html的方式是,每个部分都是一张包含一些单选按钮的卡片。我的问题是,如果我向单选按钮添加一个类,它不会验证多张卡片上的所有单选按钮吗?