On 03/11/15 09:30, Pedro Castillo Rivas wrote:
buenas listeros. estoy usando Jquery EasyUI y me está pasando algo curioso. tengo un layout.php donde cargo todos los css y js necesarios para mi app, dentro de este layout tengo un <div id=ontenedor"></div> en el quiero mostrar todo lo q se mueva en la app de forma dinámica pero cuando uso ajax para traer cualquier cosa hacia este contenedor pierde los estilos lo que quiero mostrar dentro del contenedor. esta filosofía la he usado de toda la vida y nunca había tenido este problema pq la entidad padre posee todo lo necesario. a continuación muestro mi layout.php y la forma de llamar los contenidos:

//layout.php
<html>
<head>
    <meta charset=TF-8">
    <title>Bienvenido a SEGES</title>
<link rel=tylesheet" type="text/css" href=<?php echo base_url("ui/themes/default/easyui.css"); ?>> <link rel=tylesheet" type="text/css" href=<?php echo base_url("ui/themes/icon.css"); ?>> <link rel=tylesheet" type="text/css" href=<?php echo base_url("ui/demo/demo.css"); ?>> <link rel=tylesheet" type="text/css" href=<?php echo base_url("css/others.css"); ?>> <script type=ext/javascript" src=<?php echo base_url("ui/jquery.min.js"); ?>></script> <script type=ext/javascript" src=<?php echo base_url("ui/jquery.easyui.min.js"); ?>></script> <script type=ext/javascript" src=<?php echo base_url("js/util.js"); ?>></script>
</head>
<body>
            <div class=asyui-panel">
<a id=ogo" href="#" class="easyui-linkbutton" data-options=lain:true">SEGES</a>
            </div>
            <div id=ontenedor'></div>
</body>
</html>

//js
$("#logo").on('click', function() {
$('#contenedor').load('index.php/c_usuario'); //aqui he usado load y ajax "manual" y sin resultado alguno
});

//el controlador de usuario
public function index()
{
        $this->load->view('grid');
}

//la vista grid.php
//aqui lo q ponga pirde los estilos cuando se muestra en el contenedor

AGRADECERÍA SU AYUDA. sl2

//js
<script type="text/javascript">
        $('#contenedor').click(function()
            var form_data = {
                   ajax: '1'
                                         };

                                            $.ajax({
url: "<?php echo site_url('controlador/funcion_a_llamar'); ?>",
                                                type: 'POST',
                                                data: form_data,
                                                success: function(msg) {
$('#contenedor').html(msg);
                                                }
                                            });

                                            return false;
                                        });
                                        </script>

Perdón por las indentaciones, no funcionan muy bien en mi editor de texto actual... La cosa es que cuando hagas clic, para que se muestre el contenido en el div contenedor, pasa la variable ajax como 1, chequeala en el controlador con un if ajax == 1 $this->load->view("view"). Otra cosa, he encontrado que en CI, cuando llamas a un controlador, no siempre coge la función index, como debería ser, así que en la llamada AJAX, incluye el controlador/index, siempre con site_url() o base_url().
Saludos..


--
Este mensaje ha sido analizado por MailScanner
en busca de virus y otros contenidos peligrosos,
y se considera que está limpio.

______________________________________________________________________
Lista de correos del Grupo de Usuarios de Tecnologías Libres de Cuba.
Gutl-l@jovenclub.cu
https://listas.jovenclub.cu/cgi-bin/mailman/listinfo/gutl-l

Responder a