how to repopulating a dropdown in codeigniter after form validation fails?

codeigniter, php

Solution

According to the manual:

<select name="myselect">
        <option value="one" <?php echo  set_select('myselect', 'one', TRUE); ?> >One</option>
        <option value="two" <?php echo  set_select('myselect', 'two'); ?> >Two</option>
        <option value="three" <?php echo  set_select('myselect', 'three'); ?> >Three</option>
</select>

In your case

<select style="width:25%;" name='state' <?php if(form_error('state') != '') {  echo 'id=error'; } ?>>
<option value=''>State</option>
 <?php  foreach($states->result() as $row)
 {
 echo "<option value='$row->state_name' " . set_select('state', $row->state_name) . " >". $row->state_name."</option>";
 }  ?>

</select>

[UPDATE]

<select style="width:25%;" name='state' <?php if(form_error('state') != '') {  echo 'id=error'; } ?>>
    <option value=''>State</option>
     <?php  
$defaultvalue = 'Nigeria'; //Please set default value here when nothing is selected before submit - change Nigeria
foreach($states->result() as $row)
     {
     echo "<option value='$row->state_name' " . set_select('state', $row->state_name, ((!isset(set_select('state', $row->state_name)) &&  ($row->state_name == $defaultvalue) ) ? TRUE : FALSE )) . " >". $row->state_name."</option>";
     }  ?>


</select>

Just remove TRUE from set_select if you don't want to set a default value

If you use a menu, this function permits you to display the menu item that was selected. The first parameter must contain the name of the select menu, the second parameter must contain the value of each item, and the third (optional) parameter lets you set an item as the default (use boolean TRUE/FALSE).

Problem

``` <select style="width:25%;" name='state' <?php if(form_error('state') != '') { echo 'id=error'; } ?>> <option value=''>State</option> <?php foreach($states->result() as $row) { echo "<option value='$row->state_name'>". $row->state_name."</option>"; } ?> </select> ``` hi, i am facing problem in the above code, please help me, set_value is not working for me, dropdown is not populating after form validation fails , thanks in advance or does something like this works, here target is hidden value. now how to set target value to drop down value(option value) ``` <script> window.onload = function (){ target=document.getElementById('target').value; if(target.length!=''){ // document.getElementByName('state').value=target; } } </script> ```

Original source