如何在jQuery中处理if条件
我有一个有图像的类如何在jQuery中处理if条件,jquery,Jquery,我有一个有图像的类 <a class="proceed-btn right" onclick="validateall();" style="cursor: pointer;">Proceed To Next Step >>></a> 然后在同一页上,我有这些输入字段和链接 <input type="text" id="name" name="name" value="" class="field left"> <input type
<a class="proceed-btn right" onclick="validateall();" style="cursor: pointer;">Proceed To Next Step >>></a>
然后在同一页上,我有这些输入字段和链接
<input type="text" id="name" name="name" value="" class="field left">
<input type="text" id="company" name="company" value="" class="field left">
<input type="text" id="email" name="email" value="" class="field left">
<a onclick="setindustry('3');" style="cursor: pointer;" class="industry_links highlight">Retail</a>
<a onclick="setsystems('5');" style="cursor: pointer;" class="count_links highlight">5</a>
每个文本字段至少有一个字母,industry_links和count_links类都至少有一个带有highlight类的类
基本上,我想改变按钮的颜色时,所有五个都满足
抱歉,您正在检查的按钮太混乱了,请使用css功能进行测试:
$('.buttonsClass').each(function(){
if(this.css('text-decoration') == 'none'
&& ... )
this.addClass('new_button');
});
不确定我的语法是否正确,但使用firebug应该很容易实现。在psudo jquery中,作为一种通用模式,它更具可读性:
$(elements you are looking for).change(function() {
if(condition A &&
condition B &&
.
.
.
condition Z)
{
$(element you want to change).addClass('class you want to add');
}
});
您可以侦听任何元素中的更改,测试是否满足所有条件,然后应用更改。好的,我选择了我认为最具可读性的方法。
var allHaveAtleastOneLetter = true;
$("input[type='text']").each(function(){ allHaveAtleastOneLetter && ($(this).val().length > 0 )});
var industryLinksHasHighlight = $(".industry_links.highlight").length > 0;
var countLinksHasHighlight = $(".count_links.highlight").length > 0;
if(allHaveAtleastOneLetter && industryLinksHasHighlight && countLinksHasHighlight){
$("proceed-btn.right").addClass("new_button");
}
下面是:
if($('#name').val().length>0 &&
$('#company').val().length>0 &&
$('#email').val().length>0 &&
$('.industry_links.highlight').length > 0 &&
$('.count_links.highlight').length > 0
) {
// Of course you could make #FF0000 any colour you want
$('.proceed-btn.right').css('color', '#FF0000');
}
你做错了 如果是我,我会使用一个验证工具包(像这样)——如果表单通过了验证,则使用“addClass”向按钮添加一个类来更改按钮的颜色
如果表单验证失败,请删除该类(并禁用该按钮?)。很抱歉,我试图使其尽可能简单明了…感谢您的帮助您需要关闭输入标记。哪个按钮是“顶部按钮”?我想你需要一个点,在最后一行的“右”之前没有空格。你确实是对的,谢谢你指出这一点!我已经更新了代码。
var allHaveAtleastOneLetter = true;
$("input[type='text']").each(function(){ allHaveAtleastOneLetter && ($(this).val().length > 0 )});
var industryLinksHasHighlight = $(".industry_links.highlight").length > 0;
var countLinksHasHighlight = $(".count_links.highlight").length > 0;
if(allHaveAtleastOneLetter && industryLinksHasHighlight && countLinksHasHighlight){
$("proceed-btn.right").addClass("new_button");
}
if($('#name').val().length>0 &&
$('#company').val().length>0 &&
$('#email').val().length>0 &&
$('.industry_links.highlight').length > 0 &&
$('.count_links.highlight').length > 0
) {
// Of course you could make #FF0000 any colour you want
$('.proceed-btn.right').css('color', '#FF0000');
}