xml 파일을 통해 필터를 검색하고 있습니다. 지금까지 나는 하나의 속성으로 만 선택하면 올바른 노드를 표시하는 데 성공했습니다. Bur : 두 속성이 동일한 노드를 표시하려면 하나 이상의 올바른 속성을 가진 모든 노드를 가져옵니다. 를 heres 내 코드 : 당신이 때마다 속성 하나 일치 true로 경기를 설정하기 때문이다jquery에서 필터링 된 결과 만 얻으려면 어떻게해야합니까?
function loadFilter(xml){
filterResults(xml);
}
function filterResults(xml)
{
match=true;
var candidate = $(xml).find("candidate");
for (var i=0;i<candidate.length;i++)
{
var sex_key = $("#sex").val();
var sex_value = $(candidate[i]).attr("sex");
var eye_color = $("#eye-color").val();
var eye_color_value = $(candidate[i]).attr("eyecolor");
var transport = $("#transport").val();
var transport_value = $(candidate[i]).attr("transport");
var extra = $("#extra").val();
var extra_value = $(candidate[i]).attr("extra");
if(checkValue(sex_key, sex_value) == true)
{
match = true;
displayFilteredCandidate();
}
if(checkValue(eye_color,eye_color_value) == true)
{
match = true;
displayFilteredCandidate();
}
if(checkValue(transport,transport_value) == true)
{
match = true;
displayFilteredCandidate();
}
if(checkValue(extra,extra_value) == true)
{
match = true;
displayFilteredCandidate();
}
function displayFilteredCandidate(){
console.log($(candidates[i].getElementsByTagName("img")[0]));
var candidateName = $(candidates[i]).attr("name")+" "+$(candidates[i]).attr("surname");
var candidateImage = $(candidates[i].getElementsByTagName("img")[0]).attr("src");
var cand = CandidateThumb(candidateName,"../candidates/"+candidateImage,candidates[i]);
cand.data({node:candidates[i]}).click(candidateClick);
$("#mainContent").append("<div id='candidates'></div>");
$("#candidates").append(cand);
}
}
}
function checkValue(key, value)
{
var match = false;
if(key == value)
{
match = true;
} else {
match = false;
}
console.log(match);
return match;
}
jQuery에서'.filter() '소리를 들었습니까? –