Jquery Can';t从div中删除类
我正在从JSON动态地将id设置为divs。当我试图从这些div中删除一个类时,什么都没有发生Jquery Can';t从div中删除类,jquery,css,Jquery,Css,我正在从JSON动态地将id设置为divs。当我试图从这些div中删除一个类时,什么都没有发生 if(dueDate < today){ debtID = "#" + data[i].id_debt; console.log(debtID); $(debtID).removeClass(_this.hiddenClassAlt); } if(截止日期
if(dueDate < today){
debtID = "#" + data[i].id_debt;
console.log(debtID);
$(debtID).removeClass(_this.hiddenClassAlt);
}
if(截止日期<今天){
debtID=“#”+数据[i].id_债务;
console.log(debtID);
$(debtID).removeClass(_this.hiddenClassAlt);
}
控制台显示屏#4。但是在id=“4”的div上,它仍然是隐藏的
如果我这样做:
if(dueDate < today){
debtID = "#" + data[i].id_debt;
$("#4").removeClass(_this.hiddenClassAlt);
}
if(截止日期<今天){
debtID=“#”+数据[i].id_债务;
$(“#4”).removeClass(_this.hiddenClassAlt);
}
那就行了。我知道这很简单,但我错过了什么
编辑:这是额外的代码,可能是其他地方出了问题,导致类不能被删除。但是,控制台仍将debtID显示为正确的div ID
for(var i = 0; i < debtsLength; i++){
var debtID = '';
if(data[i].dob != null){
data[i].dob = _this.localPost.reformatDate(data[i].dob);
}
if(data[i].created_date !== null ){
var dueDate = $.datepicker.parseDate( "yy-mm-dd", data[i].created_date);
var today = new Date();
dueDate = dueDate.toISOString();
today = today.toISOString();
data[i].created_date = _this.localPost.reformatDate(data[i].created_date);
debtID = "#" + data[i].id_debt;
//debtID = debtID.replace(/ /g,'');
} else {
var dueDate = null;
var today = null;
}
if(data[i].update_date != null){
data[i].update_date = _this.localPost.reformatDate(data[i].update_date);
}
output = Mustache.render(_this.accountDebtsTemplate, data[i]);
if(dueDate < today){
debtID = "#" + data[i].id_debt;
console.log(debtID);
$(debtID).removeClass(_this.hiddenClassAlt);
}
$(_this.debteeContainer).append(output);
$(_this.showDebtee).addClass(_this.hiddenClassAlt);
$(_this.hideDebtee).removeClass(_this.hiddenClassAlt);
}
for(变量i=0;i
编辑:已解决。我将if(dueDate谢谢你的提示。我还将继续并更改id,使其不以数字开头 我对你的代码进行了测试,做了一些修改,但我觉得效果很好
var-dueDate=0;
今天的var=2;
风险值数据=[“4”];
var i=0;
$(文档).ready(函数(){
如果(截止日期<今天){
debtID=“#”+数据[i];
$(债务人ID).removeClass(“testClass”);
}
});
您输入的类名可能有问题。removeClass()?能否提供JSFIDLE?数据[i]。id\u它在控制台或警报中返回什么请检查quickmaybe追加引号。对于HTML 4,有效id不应以数字开头(
#4
将无效)。HTML没有那么挑剔,但是仍然有很多HTML4浏览器(例如IE<10):)您的代码应该可以工作。检查这个
var dueDate = 0;
var today = 2;
var data = ["4"];
var i = 0;
$(document).ready(function(){
if(dueDate < today){
debtID = "#" + data[i];
$(debtID).removeClass("testClass");
}
});