Re: Dynamic refresh dropdown list
| From: | Manuel Lemos | Date: | Tue, 17 Jul 2007 19:12:00 +0000 |
| Subject: | Re: Dynamic refresh dropdown list | ||
| References: | 1 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-259036@lists.php.net to get a copy of this message | ||
Hello,
on 07/17/2007 07:57 AM C.R.Vegelin said the following:
> I have a selection form with multiple dropdown lists, let's say A, B and C.
> If the dropdown list B is changed, then dropdown list C should be updated.
> To get this done, I use a small javascript
> function reload(form)
> { var val=form.B.options[form.B.options.selectedIndex].value;
> self.location='myForm.php?B=' + val ;
> }
> called by
> <select id="B" name="B" onChange="reload(this.form);">
>
> This works fine, BUT all other dropdown lists are also reset.
> So if I select another A, then another B, then also A is reset to its prior value.
> Any idea how I can refresh a specific dropdown,
> without affecting all the other dropdowns ?
You seem to want linked select inputs. Take a look at this forms class.
It comes with a plug-in that does exactly what you want. It links select
inputs, so when the value of one input changes, the following input
switches the group of options without reloading the page. Here is a live
example that you can see in action:
http://www.meta-language.net/forms-examples.html?example=test_linked_select
There is are even variants of this plug-in that can retrieve a dynamic
set of options from a database. There are variants for MySQL or any
other database using Metabase or PEAR::MDB2 database abstraction API.
You can also watch a tutorial video here:
http://www.phpclasses.org/browse/video/1/package/1/section/plugin-linked-select.html
You can download the forms class from here:
http://www.phpclasses.org/formsgeneration
--
Regards,
Manuel Lemos
Metastorage - Data object relational mapping layer generator
http://www.metastorage.net/
PHP Classes - Free ready to use OOP components written in PHP
http://www.phpclasses.org/