/    Sign up×
Community /Pin to ProfileBookmark

NEED HELP! Retrieve XML Elements by Attribute Value???

I am trying to build a cascading dropdown box based on an XML file.

I have sucessfully created the first drowdown by loading the options from the XML file. Now I am trying to create a second function that will take the selected value of dropdown box (1) and use that value to filter the xml and provide the specific elements.

I believe that I am close…but I can not get the list to load correctly!!!

Here is a snippet of the xml file:

[CODE]<?xml version=”1.0″?>
<criterias>
<drpSelect>
<criteriaSelect textSelect=”ADC” RC=”16″></criteriaSelect>
<criteriaSelect textSelect=”ALL OTHER” RC=”5″></criteriaSelect>
<criteriaSelect textSelect=”CONNECTICUT REGION” RC=”14″></criteriaSelect>
<criteriaSelect textSelect=”FLORIDA REGION” RC=”13″></criteriaSelect>
<criteriaSelect textSelect=”ILLINOIS REGION” RC=”12″></criteriaSelect>
<criteriaSelect textSelect=”METRO NY NORTH REGION” RC=”10″></criteriaSelect>
<criteriaSelect textSelect=”METRO NY SOUTH REGION” RC=”11″></criteriaSelect>
<criteriaSelect textSelect=”MID-ATLANTIC REGION” RC=”9″></criteriaSelect>
<criteriaSelect textSelect=”NEW JERSEY REGION” RC=”15″></criteriaSelect>
<criteriaSelect textSelect=”RSP Unknown” RC=”R0″></criteriaSelect>
<criteriaSelect textSelect=”UNKNOWN REGION” RC=””></criteriaSelect>
<criteriaSelect textSelect=”UPSTATE REGION” RC=”1″></criteriaSelect>
<criteriaSelect textSelect=”WEST COAST PERSONAL BANKING REGION” RC=”6″></criteriaSelect>
<criteriaSelect textSelect=”WEST COAST SPARTAN REGION” RC=”17″></criteriaSelect>
</drpSelect>
<drpView>
<criteria text=”ADC” DC=”CR” RC=”16″></criteria>
<criteria text=”ALL OTHER” DC=”XX” RC=”5″></criteria>
<criteria text=”AMERICAS PREMIER CENTER” DC=”FA” RC=”13″></criteria>
<criteria text=”ASIAN MARKET BANKING” DC=”AB” RC=”10″></criteria>
<criteria text=”BROOKLYN-STATEN ISLAND DISTRICT” DC=”BR” RC=”11″></criteria>
<criteria text=”CENTRAL NEW YORK MARKET” DC=”CV” RC=”1″></criteria>
<criteria text=”CHICAGO DISTRICT” DC=”CH” RC=”12″></criteria>
<criteria text=”DELAWARE DISTRICT” DC=”DE” RC=”9″></criteria>
<criteria text=”EMPIRE MARKET” DC=”CA” RC=”1″></criteria>
</drpView>
</criterias>[/CODE]

Here is the Javascript functions I have thus far:

[CODE]<script language=”JavaScript”>
function funcTest()
{
xmlObj = new ActiveXObject(“Microsoft.XMLDOM”);
xmlObj.async = false;
xmlObj.load(“ORG_DIM_CasCade.xml”);

//var selected_index = fmnm.elements[“regions”].selectedIndex;
//var region_value = fmnm.elements[“regions”].options[selected_index].value;

regions = xmlObj.getElementsByTagName(“criteriaSelect”);
n_regions = regions.length;
for (i = 0; i < n_regions; i++)
{
region = regions.item(i);
attr = region.getAttribute(“textSelect”);
attv = region.getAttribute(“RC”);
var op=document.createElement(“Option”);
op.text=attr;
op.value=attv;
fmnm.drpSelect.add(op);
}
}
</script>

<script language=”JavaScript”>

function LoadDistricts()
{
xmlObj = new ActiveXObject(“Microsoft.XMLDOM”);
xmlObj.async = false;
xmlObj.load(“ORG_DIM_CasCade.xml”);

var selected_index = fmnm.elements[“regions”].selectedIndex;
var region_value = fmnm.elements[“regions”].options[selected_index].value;

//districts = xmlObj.getElementsByTagName(“criteria”);
districts = xmlObj.getElementsByAttribute(“text”,region_value)
n_districts = districts.length;
for (i = 0; i < n_districts; i++)
{
district = districts.item(i);
attText = district.getAttribute(“text”);
attd = district.getAttribute(“RC”);
attdv = district.getAttribute(“DC”);
var ops=document.createElement(“Option”);
ops.text=attText;
ops.value=attdv;
fmnm.drpView.add(ops);
}
}
</script>[/CODE]

the LoadDistricts function is obviously not right…but this is the one I desperatly need help with!

If ANYONE can point me in the right direction..I would be greatly appreciative.

to post a comment
JavaScript

0Be the first to comment 😎

×

Success!

Help @salnick4 spread the word by sharing this article on Twitter...

Tweet This
Sign in
Forgot password?
Sign in with TwitchSign in with GithubCreate Account
about: ({
version: 0.1.9 BETA 5.1,
whats_new: community page,
up_next: more Davinci•003 tasks,
coming_soon: events calendar,
social: @webDeveloperHQ
});

legal: ({
terms: of use,
privacy: policy
});
changelog: (
version: 0.1.9,
notes: added community page

version: 0.1.8,
notes: added Davinci•003

version: 0.1.7,
notes: upvote answers to bounties

version: 0.1.6,
notes: article editor refresh
)...
recent_tips: (
tipper: @Yussuf4331,
tipped: article
amount: 1000 SATS,

tipper: @darkwebsites540,
tipped: article
amount: 10 SATS,

tipper: @Samric24,
tipped: article
amount: 1000 SATS,
)...