我正在尝试在jQuery中的xml上使用过滤器。我正在根据条件获取过滤结果,但是当标志设置为0时,无法检索所有xml项目;即,当标志为零时,所有xml项目都需要显示删除过滤器。

JS script:
$(xml).find("TechJobSite").filter(function () {
if(jobFlagview==0) // Problem here-Have to remove the filter here to display all job lists
return ;
else if(jobFlagview==1) //My Jobs
return $(this).find("AssignedRepairerUserName").text() == userId;
else if(jobFlagview==2) //Review
return $(this).find("Status").text() == "Draft";
}).each(function () {

最佳答案

尝试返回true,而不只是return

if(jobFlagview==0)
return true;




如果您不想应用过滤器,就不要像这样调用filter()本身

var $els = $(xml).find("TechJobSite");
if (jobFlagview != 0) {
    $els = $els.filter(function () {
        if (jobFlagview == 1) //My Jobs
        return $(this).find("AssignedRepairerUserName").text() == userId;
        else if (jobFlagview == 2) //Review
        return $(this).find("Status").text() == "Draft";
    })
}
$els.each(function () {})

关于jquery - 过滤时使用jquery显示xml的所有元素,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22979977/

10-10 17:58