我有这个代码,如果有一个空的话,所有名为“inputix”的输入字段都有一个红色边框,我只想更改那些空的:
html part http://pastebin.com/4kyv8dLD
for (i=0;i<required.length;i++) {
var input = $('#'+required[i]);
if ((input.attr('value') === "") || (input.val() === emptyerror)) {
input.addClass("needsfilled");
} else {
input.removeClass("needsfilled");
}
}
if (!/^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9-])+.)+([a-zA-Z0-9]{2,4})+$/.test(email.val())) {
email.addClass("needsfilled");
email.val(emailerror);
}
if ($(":input").hasClass("needsfilled")) {
i=0;
$('.inputix').css('border','solid 1px red');
for (i=0; i<5; i++){
$('.inputix'+[i]).css('border','solid 1px red');
}
return true;
}
问题是只想让空的边框变成红色边框......
答案 0 :(得分:2)
无需使用for
循环,您可以使用start with
选择器:
选择具有指定属性的元素,其值始于给定字符串。
$('input[class^="inputix"]').css('border','solid 1px red')
作为替代方案,您可以使用each
循环:
$('form').submit(function(){
$('input').each(function(){
if (this.value == '') {
$(this).addClass('error')
} else {
$(this).removeClass('error')
}
})
if ($('input.error').length > 0) {
return false
}
})