Hey allemaal,
Ik ben bezig met een klein scriptje voor een soort text parser. Nu wil ik graag via een input field een woord kunnen toevoegen aan een selectBox. Dit werkt allemaal wel. Vervolgens wil ik alle waardes uit de selectBox posten naar een andere pagina. Daarvoor moet ik ze eerst allemaal selecteren. Dit werkt echter alleen bij FF en niet bij IE. Bij IE krijg ik de foutmelding dat de nieuwe option leeg is of niet bestaat. Als ik de functie "postform()" aanroep via een aparte knop werkt het ook. Op 1 of andere manier denkt de functie "postform()" dat ie nog niet bestaat. Het gekke is dat de "words.length" de nieuwe option wel ziet.
Heeft iemand een idee waar het aan zou kunnen liggen?
De knop:
De selectbox gevuld met waardes uit db:
De 2 functies (de addWord() functie werkt zonder problemen. Het maakt overigens niet uit welke selecteer methode ik gebruik. (setSelectedIndex of .selected = "selected")
Hopen dat iemand een idee heeft waarom het wel in FF maar niet in IE werkt.
Mvg,
HJ Bosscher
Ik ben bezig met een klein scriptje voor een soort text parser. Nu wil ik graag via een input field een woord kunnen toevoegen aan een selectBox. Dit werkt allemaal wel. Vervolgens wil ik alle waardes uit de selectBox posten naar een andere pagina. Daarvoor moet ik ze eerst allemaal selecteren. Dit werkt echter alleen bij FF en niet bij IE. Bij IE krijg ik de foutmelding dat de nieuwe option leeg is of niet bestaat. Als ik de functie "postform()" aanroep via een aparte knop werkt het ook. Op 1 of andere manier denkt de functie "postform()" dat ie nog niet bestaat. Het gekke is dat de "words.length" de nieuwe option wel ziet.
Heeft iemand een idee waar het aan zou kunnen liggen?
De knop:
code:
1
| <input type="button" value="Toevoegen" onclick="javascript: addWord(); postForm();"> |
De selectbox gevuld met waardes uit db:
code:
1
2
3
4
5
6
7
8
| <select multiple="multiple" name="words[]" id="words" style=" width:245px; height:100px;">
<?
$result = $mysql->getRs('SELECT * FROM rss_words');
for ($n = 0; $n < count($result); $n++) {
echo '<option>'. $result[$n]->word .'</option>';
}
?>
</select> |
De 2 functies (de addWord() functie werkt zonder problemen. Het maakt overigens niet uit welke selecteer methode ik gebruik. (setSelectedIndex of .selected = "selected")
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| function addWord() {
var option = document.createElement('option');
if(document.getElementById('newWord').value != '') {
document.getElementById('words').appendChild(option);
option.text = document.getElementById('newWord').value;
option.value = document.getElementById('newWord').value;
document.getElementById('newWord').value = '';
}
}
function postForm() {
var words = document.getElementById('words');
for (n = 0; n < words.length; n++) {
words.options[n].selected = true;
}
document.form.submit();
} |
Hopen dat iemand een idee heeft waarom het wel in FF maar niet in IE werkt.
Mvg,
HJ Bosscher