ik heb een select object, deze heeft tijdens het laden nog geen options dus daar gaan we dan later iets aan doen, we voegen er een paar toe en we geven netjes de name en de value op.
een paar regels code verder wil ik een van die options selected maken aan de hand van de value.
nu heb ik hiervoor enkele stukjes code gemaakt en gekregen.
die dus de juiste option opzoeken als ik gewoon de nieuwe value invoer, deze option word dan dus selected.
met onderstaande code heb ik dus eerst in een ander frame[dataone] de options toe gevoegd aan het object[etage], wat perfect gaat.
nu roep ik dus dit aan:
en dan gebeurd het:
ik krijg een error melding, en daarin staat dat hij de eigenschap selected niet kan instellen. met daarachter: niet nader omschreven fout.
de option wordt echter wel gewoon geselecteerd maar het script stopt helaas.
als ik echter nogmaals de value probeer te verandere krijg ik geen error op dat object en gaat het script gewoon door. dit waarschijnlijk omdat de option dan al geselecteerd is.
als ik de options van te voren toevoeg en de code uitvoer werkt het wel goed en krijg ik geen errors.
heeft iemand hier ervaring mee? weet iemand of dit echt een bug is?
het os is: win2pro
de browser is: IE 5.50
een paar regels code verder wil ik een van die options selected maken aan de hand van de value.
nu heb ik hiervoor enkele stukjes code gemaakt en gekregen.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
| function getOptionByName(sel,name){
for(var i=0; i<sel.options.length; i++){
if(sel.options[i].value == name) return sel.options[i];
}
}
function changevalue(id,data){
var obj = document.getElementById(id);
if (obj.tagName.toLowerCase() == 'select'){
getOptionByName(obj,data).selected='true';
} else {
obj.value=data;
}
} |
die dus de juiste option opzoeken als ik gewoon de nieuwe value invoer, deze option word dan dus selected.
met onderstaande code heb ik dus eerst in een ander frame[dataone] de options toe gevoegd aan het object[etage], wat perfect gaat.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
| parent.dataone.emptyobject('etage');
var newOption = parent.frames['dataone'].document.createElement('OPTION');
newOption.innerText = "01 BEGANE GROND";
newOption.value = "01 BEGANE GROND";
parent.frames['dataone'].document.getElementById('etage').appendChild(newOption);
var newOption = parent.frames['dataone'].document.createElement('OPTION');
newOption.innerText = "02 EERSTE ETAGE";
newOption.value = "02 EERSTE ETAGE";
parent.frames['dataone'].document.getElementById('etage').appendChild(newOption);
var newOption = parent.frames['dataone'].document.createElement('OPTION');
newOption.innerText = "3";
newOption.value = "3";
parent.frames['dataone'].document.getElementById('etage').appendChild(newOption);
var newOption = parent.frames['dataone'].document.createElement('OPTION');
newOption.innerText = "BG";
newOption.value = "BG";
parent.frames['dataone'].document.getElementById('etage').appendChild(newOption); |
nu roep ik dus dit aan:
code:
1
| parent.frames['dataone'].changevalue('etage','BG'); |
en dan gebeurd het:
ik krijg een error melding, en daarin staat dat hij de eigenschap selected niet kan instellen. met daarachter: niet nader omschreven fout.
de option wordt echter wel gewoon geselecteerd maar het script stopt helaas.
als ik echter nogmaals de value probeer te verandere krijg ik geen error op dat object en gaat het script gewoon door. dit waarschijnlijk omdat de option dan al geselecteerd is.
als ik de options van te voren toevoeg en de code uitvoer werkt het wel goed en krijg ik geen errors.
heeft iemand hier ervaring mee? weet iemand of dit echt een bug is?
het os is: win2pro
de browser is: IE 5.50
openkat.nl al gezien?