22. december 2000 - 10:55Der er
8 kommentarer og 1 løsning
Tilføj option til selectbox
Jeg eksperimenterer lidt med at tilføje options dynamisk til en select-box ved at indtaste nye værdier i en tekstbox.
Det virker godt nok, når det foregår på samme side, men når jeg forsøger at indtaste værdierne i en tekstbox i et popup-vindue og ændre selectboxen på den oprindelige side går det galt.
Et udklip af min java script: Placeret i head: <script language=\"Javascript\">; function AddToOptionList(OptionList, OptionValue, OptionText) { // Add option to the top of the list OptionList[0] = new Option(OptionText, OptionValue); OptionList[0].selected = true; } </script>;
Placeret i body: <script>;AddToOptionList(opener.document.myForm.categories, \'123\', \'test\');</script>;
Jeg får følgende fejl: \"Serveren producerede en undtagelse\". Hvad betyder dette?
For at teste, at jeg har referencenavnene korrekte, har jeg forsøgt følgende, som virker fint: <script>;opener.document.myForm.name.value = \'Dette virker\';</script>; <script>;opener.document.myForm.categories[5].selected = true;</script>;
Har jeg lavet en fejl, eller kan det slet ikke lade sig gøre?
Jeg kan ikke gennemskue fejlmeddelelsen, men det burde kunne lade sig gøre. Omend du får overskrevet første indgang i select-boxen, ikke tilføjet, men det er en helt anden sag.
Så: mere kode!! Så kan jeg selv lige teste det og smide et par testudskrifter ind.
********** Filen newOption.php ********** <html> <head> <title>Tilføj ny kategori</title>
<script language=\"Javascript\"> <!--
function AddToOptionList(OptionList, OptionValue, OptionText) { // Add option to the top of the list OptionList[0] = new Option(OptionText, OptionValue); OptionList[0].selected = true; }
<script> <!-- // Følgende linie bliver genereret af PHP når formularen bliver sendt AddToOptionList(opener.document.myForm.categories, \'123\', \'test\'); // --> </script>
Nej, det har jeg nu ikke. Jeg ved ikke helt hvorfor, men prøv lige:
function AddToOptionList(OptionList, OptionValue, OptionText) { // Add option to the top of the list OptionList[0].text = OptionText; OptionList[0].value = OptionValue; OptionList[0].selected = true; }
Det er ikke helt det jeg lavede, men det burde være ok. Jeg undres stadig over hvad der skete....
Jaaah, det er jo godt du synes at det er logisk. Men hvis det var \"rigtige\" referencer mellem objekter, burde man kunne lave sådan en udskiftning. Men nyd freden .... ;-)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.