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>
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>
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.