我想检查一个类中的任何元素是否满足某些条件。 例。
$(document).on('click','.modalInner_form_nav', function(){
var input = $(this).parents('.modalInner_form').find('.validate_g');
//$(input).each(function(index, element) {
if ($(input).val() == ''){
$(input).css('border', '#BB0000 1px solid');
return false;
}
else {
/////////go to next///////////
if ($(this).parents('.modalInner_form').is(':last-child')){
}
else {
$(this).parents('.modalInner_form').slideUp();
$(this).parents('.modalInner_form').next('.modalInner_form').slideDown();
}
////////////
}
});
如果所有输入字段都为空,则返回false,但如果此类中的一个不为空,则返回true。
答案 0 :(得分:1)
问题是你有内在功能所以
$(document).on('click', '.modalInner_form_nav', function () {
var $form = $(this).parents('.modalInner_form');
var $input = $form.find('.validate_g');
var valid = true;
$input.each(function (index, element) {
var $this = $(this)
if ($this.val() == '') {
valid = false;
$this.css('border', '#BB0000 1px solid');
}
});
if (valid) {
if ($form.is(':last-child')) {
//do something else
} else {
$form.slideUp();
$form.next('.modalInner_form').slideDown();
}
}
});
答案 1 :(得分:0)
不确定您的问题是什么,但这是一种改进代码的方法。
将$(this).parents('.modalInner_form')
保存在变量中,而不是不断重复同一行代码。然后你可以用变量替换所有这些方法调用,只需在变量上调用你想要的任何函数。
var varName = $(this).parents('.modalInner_form');
varName.find('.validate_g');
...
if(varName.is(':last-child')){
...