Ver Mensaje Individual
  #2 (permalink)  
Antiguo 11/02/2012, 10:05
Avatar de ocesitaro
ocesitaro
 
Fecha de Ingreso: diciembre-2011
Ubicación: Carabayllo
Mensajes: 274
Antigüedad: 12 años, 11 meses
Puntos: 36
Respuesta: actualizar div con resultados de controlar

Cita:
Iniciado por nh2006 Ver Mensaje
Hola amigos,

Me pueden ayudar con un problema que tengo a la hora de implementar CodeIgniter y JQuery?

Les explico.

Tengo una vista: buscar.php:

Código HTML:
Ver original
  1.     <fieldset>
  2.         <legend><?PHP echo $this->lang->line('filter'); ?></legend>
  3.         <form id="regitro">
  4.             <label for="f_nombre">Nombre: </label>
  5.                 <input type="text" id="f_nombre" name="f_nombre" /><br />
  6.             <label for="apellido">Apellido: </label>
  7.                 <input type="text" id="f_apellido" name="f_apellido" /><br /><br />
  8.             <input type="button" id="boton" name="boton" value="Buscar">
  9.         </form>
  10.         <br />
  11.     </fieldset>
  12. <p>&nbsp;</p>
  13. <div id="listfiltrada"></div>
  14. <p>&nbsp;</p>

Los resultados de la búsqueda quiero que se actualicen en el <div id="listfiltrada">.

mi código con jquery es así:

Código Javascript:
Ver original
  1. //Para realizar filtrado
  2.     $("#boto").click(function(event){  
  3.         event.preventDefault();
  4.         $.ajax({
  5.                 type: "POST",
  6.                 url: "../index.php/controlador_demo/encontrar",
  7.                 data: ($(this).parent()).parent().serialize(),
  8.                 success:function(msj){                 
  9.                     $("#listfiltrada").load("../index.php/controlador_demo/encontrar");                
  10.                 },
  11.                 error:function(){
  12.                     alert("Error de conexión");
  13.                 }
  14.         });
  15.         return false;
  16.     });

Dentro de mi controlador_demo tengo lo siguiente:

Código PHP:
Ver original
  1. public function encontrar(){
  2.         $this->setupIdioma($newidioma); //Aqui capturo lo que manda jquery al controlador
  3.         $datos['dato']=$this->input->post('f_nombre');
  4.         $this->load->view('admusuarios/vista1',$datos);
  5.  
  6.     }

lo que yo necesito es que el resultado que voy a desplegar en vista1.php se actualice sólo en el <div id="listfiltrada"> de buscar.php.

Me pueden ayudar por favor, indicarme cómo puedo hacer lo que busco? por cierto en vista1.php ocupo la variable que recibo de buscar.php ($datos['dato']=$this->input->post('f_nombre')) pero no logro pasársela.

Desde ya se los agradezco.

Saludos
$("#boto").click(function(event){
event.preventDefault();
$.ajax({
url: "<?=base_url();?>tucontrolador",
type: "POST",
data: {parametro1:'valor'},
success: function(data){
$('#listfiltrada').html(data)
}
});
});

en tu vista-----------------------------

if($_POST){
$this->load->model('tu_modelo');

$parametro=$this->input->post('parametro1');
$nuevo=utf8_decode($parametro);

$data['resultados']=$this->tu_modelo->una_funcion($nuevo);
$this->load->view('tu_vista_de_resultados',$data);
}

Y ENTONCES cada vez que envies una variable POST el resultado de la vista , se cargara en
$('#listfiltrada')