У меня были определенные элементы вроде того же класса, что и ниже, которые будут генерироваться в цикле или что-то динамическое поколение
<div>
<input id="name" class="validate" name="name" type="text" value="Andrew">
<input id="address" class="validate" name="address" type="text" value="Newyork">
<input id="place" class="validate" name="place">
<input id="city" class="validate" name="city">
<input id="door" class="validate" name="door">
</div>
Таким образом, у меня были элементы выше, в которых некоторые имеют значения, а некоторые не имеют значений. Поэтому мне нужно создать массив элементов, которые не имеют значений, так что я могу прокручивать каждый элемент и делать некоторые вещи вроде добавление данных, удаление и т.
Итак, как собрать все элементы в массиве, который не no value
с определенным классом, например validate
в jquery
возвращает элементы без значения:
var elems = $('.validate').filter(function() {
return !this.value.length;
});
вернуть элементы без атрибута фактического value
var elems = $('.validate').filter(function() {
return this.getAttribute('value') == null;
})
С помощью этого селектора:
$('.validate:not([value])');
Если это для проверки, вам необходимо отфильтровать:
$('.validate').filter(function(){
return $.trim(this.value) == '';
})
Вы можете сделать что-то вроде этого:
$("input.validate:not([value])");
Пример здесь: http://jsfiddle.net/6UX6r/1/