Javascript 色盒get';即使条件为false,也会激发jquery
我使用下面的函数来检查某个条件,这样颜色框插件就不会被触发,除非该条件为真Javascript 色盒get';即使条件为false,也会激发jquery,javascript,jquery,colorbox,Javascript,Jquery,Colorbox,我使用下面的函数来检查某个条件,这样颜色框插件就不会被触发,除非该条件为真 function settleCashInterface(){ var element; $('#bill-list').find(".bill-item-list").each(function (){ if($(this).css("display") == "block"){ element = $(this); return fa
function settleCashInterface(){
var element;
$('#bill-list').find(".bill-item-list").each(function (){
if($(this).css("display") == "block"){
element = $(this);
return false;
}else{
element = 0;
}
});
if(element != 0){
$(".settle-cash").colorbox({inline:true, width:"72%"});
var data = "billId=" + element.parent().attr("id") + "&settlementType=No";
ajaxCall("/setlement","POST",data,function(response){
$('#settle-cash').find('.table-number').val(response.settleInfo.tableNo);
$('#settle-cash').find('.room').val(element.parent().find('.room-number').html());
$('#settle-cash').find('.num-of-guests').val("3"); //hard coded values
$('#settle-cash').find('.total').val(response.settleInfo.totalAmout);
$('#settle-cash').find('.total-due').val(response.settleInfo.totalAmout);
$('#settle-cash').find('.total-due').prop("disabled", true);
$('#settle-cash').find('.final-value').html(response.settleInfo.totalAmout);
$('#settle-cash').attr("billId",element.parent().attr("id"));
$('#settle-cash').attr("billNo",element.parent().find('.bill-number').html());
});
resetAddBill();
}else{
alert("Select a bill");
}
}
该函数在单击事件和以下代码时触发
$('.settle-cash').click(function(){
settleCashInterface();
});
如果显示元素,则应运行颜色框;如果未显示,则不应运行颜色框。当我单击相应的元素时,如果没有显示块css样式的元素,则会显示一条消息。我使用firebug进行调试。当我第一次单击时,条件被完全激发,并且颜色框不会显示!但是,当我让一个元素显示和隐藏时,就会触发条件并显示警报!当我关闭警报框时,颜色框被触发!我怎么能阻止这一切 您的代码看起来不错。确保将元素设置为除“块”之外的任何其他值。所以
display:none
etc,因为block是默认值