这两天写 js 时候,突然发现了这个问题。
在 jquery 的 each 遍历时,虽然return 了,但是并未实际 return 值作为方法的返回值,而且还是继续往后执行(有兴趣的可以试试)。 在网上查询之后发现在 jquery 的 each 方法中如果 return true 相当于是 continue,而 return false 相当于是 break。 解决方法也很简单,下面是自己的一种:
function isExistDeptDiseaseId(id) {
console.log("判断是否已存在");
var flag=true;
$('#diseaseAdded tbody').children('tr').each(function () {
var diseaseId=$(this).children('td:last-child').find('input').data("field");
if (id == diseaseId)
flag=false;
});
if (flag)
return true;
else
return false;
}