Comentarles que asumí como responsable de un proyecto que ya tiene el 50% de avace, el proyecto está desarrollado en codeiniter 2.1.
El problema es que en un formulario tengo una lista "select" cuando ocurre un error de validación este se vuelve a cargar excepto las listas.
revisando el código me doy cuenta que al momento de ejectuar el boton inmediatamente se envía al "form_validation" pero para que recargue con los mismo datos se tienen las siguientes lineas de código en el controlador:
Código PHP:
$this->form_validation->set_rules("usu_nombre", "Nombre", "required");
$this->form_validation->set_rules("usu_apellido", "Apellido", "required");
$this->form_validation->set_rules("usu_login", "Usuario", "required");
$this->form_validation->set_rules("usu_correo", "Correo", "required|valid_email");
$this->form_validation->set_rules("usu_fechanacimiento", "Fecha de nacimiento", "required");
$this->form_validation->set_rules("usu_ci", "Nro Identificación","required");
$this->form_validation->set_rules("tdoc_id", "Tipo Documento");
Código HTML:
<select name="myselect"> <option value="one" <?php echo set_select('mi_select', 'uno', TRUE); ?> >One</option> <option value="two" <?php echo set_select('mi_select', 'dos'); ?> >Two</option> <option value="three" <?php echo set_select('mi_select', 'tres'); ?> >Three</option> </select>
Código PHP:
public function getTipoDocumento($tdoc) {
$this->db->select("*");
$this->db->from("tab_tipodocumento");
$query = $this->db->get();
$option = "";
foreach ($query->result_array() as $row) {
$doc_id = $row['tdoc_id'];
$nombre = $row['tdoc_documento'];
if ($tdoc == $doc_id) {
$option.="<option value='" . $doc_id . "' selected>" . $nombre . "</option>";
} else {
$option.="<option value='" . $doc_id . "'>" . $nombre . "</option>";
}
}
return $option;
}