Moderator |
|
Options moeten op de volgende manier aangemaakt worden:
document.forms[<form_naam>].elements[<selectbox_naam>].options[<option_index>] = new Option("<option_tekst>");
document.forms[<form_naam>].elements[<selectbox_naam>].options[<option_index>].value = <value_van_de_option>;
document.forms[<form_naam>].elements[<selectbox_naam>].options[<option_index>] = new Option("<option_tekst>"); document.forms[<form_naam>].elements[<selectbox_naam>].options[<option_index>].value = <value_van_de_option>;
Hierbij komt ook nog het probleempje dat je niet weet bij welke option-index je bent.
Is de parameter option in addOption trouwens de tekst tussen de option-tags, of de value, of beide ?
In jouw geval zul je zoiets moeten doen als (als het mogelijk is om op deze manier tussen frames te communiceren althans):
function addOption(option) {
// naam van je form ???
// laatste index bepalen
var laatste_index = top.document.forms['<form_naam_hier>'].elements['afbeelding'].length;
// optie aanmaken (met 'tekstuele omschrijving')
top.document.forms['<form_naam_hier>'].elements['afbeelding'].options[laatste_index] = new Option(option);
// optie voorzien van value
top.document.forms['<form_naam_hier>'].elements['afbeelding'].options[laatste_index].value = option;
}
function addOption(option) { // naam van je form ??? // laatste index bepalen var laatste_index = top.document.forms['<form_naam_hier>'].elements['afbeelding'].length; // optie aanmaken (met 'tekstuele omschrijving') top.document.forms['<form_naam_hier>'].elements['afbeelding'].options[laatste_index] = new Option(option); // optie voorzien van value top.document.forms['<form_naam_hier>'].elements['afbeelding'].options[laatste_index].value = option; }
Als je van directory wisselt zul je waarschijnlijk ook je options moeten resetten. Anders voegt ie alleen maar opties toe .
dit doe je met een clear-functie, die je aanroept VOORDAT je nieuwe opties toevoegt:
function clear_options() {
top.document.forms['<form_naam_hier>'].elements['afbeelding'].length = 0;
}
function clear_options() { top.document.forms['<form_naam_hier>'].elements['afbeelding'].length = 0; }
EDIT: Hmm, dat laatste gaat niet helemaal goed - ik zoek dit nog uit.
EDIT 2: Ik zie niet zo gauw hoe je options weer kunt verwijderen - het beste kun je dus bij addOption een parameter "index" meegeven, die aangeeft op welke index een bepaalde naam/waarde komt te staan, en je kunt daarna de lengte van je options "cappen" met de "length" property van het selectbox-object.
Bij het schakelen van directory nummer je telkens vanaf (index) 0.
EDIT 3: Had de "JavaScript-expert" dit niet op kunnen lossen ? MOEHA |