如果“匹配项”表示为小胡子模板,那么在其中我想返回一条警告消息,指出“没有匹配项”和“可用匹配项”,该如何实现代码。它在else语句上工作正常,但是在if语句上,它什么也不返回。这是代码:
$.each(data.matches, function() {
var match = this;
if(this.matches == 0){
alert('no matches');
}
else{
alert('matches available');
}
$contents += Mustache.render(container, this);
});
有什么想法吗?谢谢!
答案 0 :(得分:0)
据我了解,您data
对象和该对象列表matches
中
看起来如果没有匹配项,它将返回undefined
而不是空数组[]
因此会引发异常无法读取未定义的属性长度
因此您将返回空数组,不包含任何匹配项,或者在按如下所示遍历列表之前检查匹配对象
if(!data.matches){
alert('no matches');
}
else{
alert('matches available');
$.each(data.matches, function() {
var match = this;
$contents += Mustache.render(container, this);
});
}