对照数组JQuery中的值检查所有元素
.list_body数据属性保存作业id引用 如果数组返回数据中不包含作业id,则需要删除特定的.list\u body div 不确定.each函数是否是这里的最佳实践,因为即使作业id在数组中,当前它似乎也会删除一个div。试试看对照数组JQuery中的值检查所有元素,jquery,each,Jquery,Each,.list_body数据属性保存作业id引用 如果数组返回数据中不包含作业id,则需要删除特定的.list\u body div 不确定.each函数是否是这里的最佳实践,因为即使作业id在数组中,当前它似乎也会删除一个div。试试看 $('.list_body').each(function(){ var job_no = $(this).data('job_id'); if($.inArray(job_no, return_data)) { $.noop
$('.list_body').each(function(){
var job_no = $(this).data('job_id');
if($.inArray(job_no, return_data)) {
$.noop();
}
else {
$(this).closest('div.list_body').remove();
}
});
演示:
更好的解决办法是
var return_data = [2]
$('.list_body').each(function(){
var job_no = $(this).data('job_id');
if($.inArray(job_no, return_data) > -1) {
$(this).closest('div.list_body').remove();
}
});
演示:试试看
$('.list_body').each(function(){
var job_no = $(this).data('job_id');
if($.inArray(job_no, return_data)) {
$.noop();
}
else {
$(this).closest('div.list_body').remove();
}
});
演示:
更好的解决办法是
var return_data = [2]
$('.list_body').each(function(){
var job_no = $(this).data('job_id');
if($.inArray(job_no, return_data) > -1) {
$(this).closest('div.list_body').remove();
}
});
演示:首先,$.inArray在未找到时返回-1,因此存在直接的逻辑缺陷。其次,这是指要删除的元素,因此使用相同的选择器查找最近的元素是多余的。试试这个:
$('.list_body').filter(function(idx, el){
return $.inArray($(this).data('job_id'), return_data) > -1;
}).remove();
首先,$.inArray在未找到时返回-1,因此存在直接的逻辑缺陷。其次,这是指要删除的元素,因此使用相同的选择器查找最近的元素是多余的。试试这个:
$('.list_body').filter(function(idx, el){
return $.inArray($(this).data('job_id'), return_data) > -1;
}).remove();
您还需要显示HTML,$.inArray返回-1(如果它不在数组中),因此,如果作业id是数组中的第一个,那么元素仍将被删除。如果它不在数组中,-1仍然是真实的。您还需要显示HTML和$。如果它不在数组中,inArray将返回-1,因此如果job_id是数组中的第一个元素,则该元素仍将被删除。如果它不在数组中,-1仍然是真的。