Nieuw lid |
|
Hallo. Ik heb eindelijk, na lang zoeken, een script gevonden waarmee ik een dubbele dropdown box kan creëren waarbij de tweede box d.m.v. javascript gevuld wordt na de selectie in box 1.
Met de standaard code gelinkt aan de SQL database werkt alles, maar zodra ik de scripts aanpas naar wat ik uiteindelijk wil behalen sluipt er ergens een error in het javascript.
Aangezien ik na diverse javascript tutorials en dingen er maar niet uit kan komen hoe alles werkt en wat ik fout doe hoop ik dat jullie mij hier verder kunnen helpen
Het script waardoor de dropdown boxes gegenereerd worden.
<!-- drop down #1, selection drives content in drop-down #2 -->
<!-- onChange event does not fire if value does not change -->
<!-- you may want to try using the onClick event instead -->
<select name="Land" id="Land" onChange="return ContinentListOnChange()">
<?php
$query = "SELECT * from spots_tbl group by Land";
$result = mysql_query($query);
while($row = mysql_fetch_assoc($result))
{
echo '<option value="' . $row['Land'] . '">' . $row['Land'] . '</option>';
}
?>
</select>
<!-- drop down #2, list contents depend on value selected in drop-down #1 -->
<!-- code in the file js/AjaxCode.js will populate this drop-down list -->
Selecteer de plaats:
<BR>
<select name="countrylist" id="countrylist" >
</select>
</html>
<!-- drop down #1, selection drives content in drop-down #2 --> <!-- onChange event does not fire if value does not change --> <!-- you may want to try using the onClick event instead --> <select name="Land" id="Land" onChange="return ContinentListOnChange()"> <?php $query = "SELECT * from spots_tbl group by Land"; { echo '<option value="' . $row['Land'] . '">' . $row['Land'] . '</option>'; } ?> </select> <!-- drop down #2, list contents depend on value selected in drop-down #1 --> <!-- code in the file js/AjaxCode.js will populate this drop-down list --> Selecteer de plaats: <BR> <select name="countrylist" id="countrylist" > </select> </html>
Het Javascript stuk waar de fout erin sluipt
// populate the contents of the country dropdown list
function PopulateCountryList(countryNode)
{
var countryList = document.getElementById("countryList");
// clear the country list
for (var count = countryList.options.length-1; count >-1; count--)
{
countryList.options[count] = null;
}
var countryNodes = countryNode.getElementsByTagName('country');
var idValue;
var textValue;
var optionItem;
// populate the dropdown list with data from the xml doc
for (var count = 0; count < countryNodes.length; count++)
{
textValue = GetInnerText(countryNodes[count]);
idValue = countryNodes[count].getAttribute("id");
optionItem = new Option( textValue, idValue, false, false);
countryList.options[countryList.length] = optionItem;
}
}
// populate the contents of the country dropdown list function PopulateCountryList(countryNode) { var countryList = document.getElementById("countryList"); // clear the country list for (var count = countryList .options .length -1; count >-1; count --) { countryList .options [count] = null; } var countryNodes = countryNode.getElementsByTagName('country'); var idValue; var textValue; var optionItem; // populate the dropdown list with data from the xml doc { textValue = GetInnerText (countryNodes [count]); idValue = countryNodes [count].getAttribute ("id"); optionItem = new Option( textValue, idValue, false, false); countryList.options[countryList.length] = optionItem; } }
Ik hoop dat hiermee de fout al gevonden kan worden, als het complete javascript nodig is hoor ik het wel!
|