Foros del Web » Programando para Internet » Jquery »

Error Datatables. Is not a function

Estas en el tema de Error Datatables. Is not a function en el foro de Jquery en Foros del Web. Buenos días.. resulta que estoy utilizando un datatable, pero no funciona, me dice que: TypeError: $(...).dataTable is not a function $('#tablee').dataTable();." Ya he mirado distintas ...
  #1 (permalink)  
Antiguo 17/06/2015, 10:56
 
Fecha de Ingreso: marzo-2015
Mensajes: 20
Antigüedad: 9 años, 1 mes
Puntos: 1
Error Datatables. Is not a function

Buenos días.. resulta que estoy utilizando un datatable, pero no funciona, me dice que:
TypeError: $(...).dataTable is not a function
$('#tablee').dataTable();."

Ya he mirado distintas soluciones que muestran en el foro de la página de datatables, y ninguno me funcionó, por eso acudo a ustedes... por favor abstenerse de comentar cosas como "Tu código está mal planteado", digo esto por que la verdad para lo que más me ha servido hacer las éstas prácticas que estoy haciendo es para darme cuenta que esta no es la carrera que quiero, por lo tanto necesito aprender solamente lo requerido para terminar este proyecto, de ante mano muchas gracias.

Código PHP:
<?php
include_once("includes/conexion.php");
    
session_start();
        if (isset(
$_SESSION['Usuario']))
    {

?>
<!DOCTYPE html>
<html>
    <head>
        <!--JQuery-->
<!--<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script> -->
        <script type="text/javascript" src='datatables/media/js/jquery.js' ></script>
        <script type="text/javascript" src='datatables/media/js/jquery.dataTables.js' ></script>

        <!--Bootstrap-->
        <script type="text/javascript" src="js/bootstrap.js"></script>
        <link rel="stylesheet" type="text/css" href="css/bootstrap.css">
        
        <!--Css-->
<!--         <link rel="stylesheet" type="text/css" href="css/style.css">
 -->
         <!--MenuCss-->
        <link rel="stylesheet" type="text/css" href="cssmenu/styles.css">
        <script type="text/javascript" src="cssmenu/script.js" ></script>

        <!--Login-->
        <script type="text/javascript" src="js/login.js" ></script>

        <!--Datatables-->



        <!--Para dispositivos móviles-->
        <meta name="viewport" content="width=device-width, initial-scale=1"><!-- Permite el zoom para funcionalidad en moviles. --> 
        <meta http-equiv="X-UA.Compatible" content="IE=Edge">
        <title></title>
        <meta charset="utf-8">

    </head>
    <body>
        <div class="page-header">
            <span>ferreteria gonzalez</span>
        </div>
        
        <div class="container">
    <?php

    
if ($_SESSION['id_cargo'] == 1) {
        include (
'cssmenu/index.html');    
    }
 
    else {
         include (
'cssmenu/index2.html');
     }
 
?>    
    <script type="text/javascript">
        $(document).ready(function(){
            $('#tablee').dataTable(); 
        });
    </script>


                <div class="container-fluid">
                    <div class="table-responsive">
                        <table class="table table-bordered" id="tablee">
                            <thead>
                                <tr>
                                    <th>ID Domicilio</th>
                                    <th>Pedido</th>
                                    <th>Cliente</th>
                                    <th>Fecha de factura</th>
                                    <th>Ciudad destino</th>
                                    <th>Estado de factura</th>    
                                    <th>Valor de la factura</th>
                                    <th colspan="3">Acciones</th>
                                </tr>
                            </thead>
                            <tbody>
<?php

    $usu 
=new Consultar();            
    
$usu->consulta("Select a.num_pedido,val_factura,fecha_factura,id_pedido, b.des_forma_de_pago, c.nombre_completo, d.descripcion, 
        d.id_estado, e.id_envio, id_ciudad_envio, f.nombre, c.cedula, c.direccion, c.telefono, c.id_ciudad, direccion_envio, 
        fecha_despacho from factura a, 
        forma_de_pago b, cliente c, facturas_envios_estados d, facturas_envios e, ciudades f 
        WHERE a.id_forma_de_pago=b.id_forma_de_pago AND a.id_cliente=c.id_cliente AND a.id_envio=e.id_envio 
        AND e.id_estado=d.id_estado AND e.id_ciudad_envio=f.id_ciudad AND e.id_estado=1 ORDER BY fecha_factura  DESC"
);

    for (
$i=0$i <sizeof($usu->datos); $i++) 
    { 
        
//print_r($usu);
/*        $envio[$i] = $usu->datos[$i][8];
        echo "<input type='hidden' id='envio' name='envio' value=".$envio[$i].">";
*/
        
if ($usu->datos[$i][6] !== 'Entregado') {
            
$color='#F69292';
        }
        else{
            
$color '#FFFFFF';
        }
        echo 
"<tr bgcolor='".$color."'>
        <td>"
.$usu->datos[$i][8]."</td>
        <td>"
.$usu->datos[$i][0]."</td>
        <td>"
.$usu->datos[$i][5]."</td>
        <td>"
.$usu->datos[$i][2]."</td>
        <td>"
.$usu->datos[$i][10]."</td>
        <td>"
.$usu->datos[$i][6]."</td>
        <td> "
.number_format($usu->datos[$i][1])."</td>
        <td>"
;

/*                 <button class="open-Modal btn btn-success btn-sm" data-toggle="modal" data-name="<?=$usu->datos[$i][0]?>" 
                    data-id="<?=$usu->datos[$i][8]?>" id="#mimodal" data-target="#mimodaleditar" >Editar
                </button>

                <div class="modal fade" id="mimodaleditar" tabindex="-1" role="dialog" aria-labelledby="mimodalLabel" aria-hidden="true">
    <div><?php //include("editar_factura.php");?></div>
</div>
 -->
 */
     //echo $usu->datos[$i][8];
      //echo $usu->datos[$i][12];

     
echo "<a href='editar_factura.php?id_domi=".$usu->datos[$i][8]."&num_pedido=".$usu->datos[$i][0].
     
"&fec_factura=".$usu->datos[$i][2]."&for_pago=".$usu->datos[$i][4]."&estado=".$usu->datos[$i][6].
     
"&nombre=".$usu->datos[$i][5]."&cedula=".$usu->datos[$i][11]."&direccioncli=".$usu->datos[$i][12].
     
"&telefono=".$usu->datos[$i][13]."&ciudad_cliente=".$usu->datos[$i][14]."&direccion_envio=".$usu->datos[$i][15].
     
"&fecha_despacho=".$usu->datos[$i][16]."&valor_factura=".$usu->datos[$i][1]."'>";
        echo 
"<button class='btn btn-success btn-sm' type='submit'>Editar</button>";
         echo 
"</a></td>";

     echo 
"<td><a href='detalles_factura.php?id_domi=".$usu->datos[$i][8]."&num_pedido=".$usu->datos[$i][0].
     
"&fec_factura=".$usu->datos[$i][2]."&for_pago=".$usu->datos[$i][4]."&estado=".$usu->datos[$i][6].
     
"&nombre=".$usu->datos[$i][5]."&cedula=".$usu->datos[$i][11]."&direccioncli=".$usu->datos[$i][12].
     
"&telefono=".$usu->datos[$i][13]."&ciudad_cliente=".$usu->datos[$i][14]."&direccion_envio=".$usu->datos[$i][15].
     
"&fecha_despacho=".$usu->datos[$i][16]."&valor_factura=".$usu->datos[$i][1]."'>";
         echo 
"<button class='btn btn-info btn-sm' type='submit'>Detalles</button>";
         echo 
"</a></td>";

?>

<!--         <td><button class="open-Modal btn btn-info btn-sm" data-toggle="modal" data-name="" 
            data-id="" id="#mimodal" data-target="#mimodaleditar" >Detalles
    </button>
</td> -->
        <td><button class="open-Modal btn btn-danger btn-sm" data-toggle="modal" data-name="" 
                    data-id="" id="#mimodal" data-target="#mimodaleditar" >Eliminar
            </button>
        </td>

</tr>
<?php/*
    }    
        $a = count($usu->datos);
        if ($a == 0) {
            echo "<h4>No existen facturas pendientes</h4>";
        */

?>
                        <!--<script type="text/javascript">
                            $(document).on("click", ".open-Modal", function () {
                                var myDNI = $(this).data('id');
                                var myDNA = $(this).data('name');
                                $("#cualquiera").empty();
                                $("#cualquiera").append( myDNI );
                                //$("#cualquiera").append( myDNA );

                                 var ob =  document.getElementById('cualquiera');
                                  console.log( ob.innerHTML );
                            });
                        </script>-->
                </tbody>
            </table>
                </div>
            </div>
        </div>    
    </div>
<?php
    
}else{        
        echo 
"<script language = javascript>
                alert('USTED NO TIENE PERMISOS PARA ENTRAR A ESTA CARPETA.')
                self.location = 'index.php';    
                </script>"
;
        }
    
?>
    </body>
</html>
  #2 (permalink)  
Antiguo 17/06/2015, 11:04
Colaborador
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 3.648
Antigüedad: 10 años, 7 meses
Puntos: 578
Respuesta: Error Datatables. Is not a function

Me suena a que no estás cargando bien dataTables. Verifica las urls.
  #3 (permalink)  
Antiguo 17/06/2015, 13:26
 
Fecha de Ingreso: marzo-2015
Mensajes: 20
Antigüedad: 9 años, 1 mes
Puntos: 1
Respuesta: Error Datatables. Is not a function

Muchas gracias por responder.
Las urls están bien... alguna otra sugerencia?
  #4 (permalink)  
Antiguo 19/06/2015, 14:52
Avatar de newboy_master  
Fecha de Ingreso: enero-2008
Ubicación: Granada
Mensajes: 882
Antigüedad: 16 años, 3 meses
Puntos: 46
Respuesta: Error Datatables. Is not a function

Usas el script de esta web? https://datatables.net/

Ahí invocan el método con la primera letra mayúscula:

Código Javascript:
Ver original
  1. $(document).ready(function(){
  2.     $('#myTable').DataTable();
  3. });

Si no usas este script me inclino por la respuesta de PHPeros, no encuentra la función para inicializar la tabla por lo cual no se ha cargado el fichero que lo contiene.

Salu2.
__________________
@jslirola - Programador Web Freelance.
  #5 (permalink)  
Antiguo 22/06/2015, 08:42
 
Fecha de Ingreso: marzo-2015
Mensajes: 20
Antigüedad: 9 años, 1 mes
Puntos: 1
Respuesta: Error Datatables. Is not a function

Mmmmmm.... ese no es el problema, lo probé antes y volví a probarlo para verificar y definitivamente no....

Tengo el plugin para completar urls en sublime text 3 (que por cierto no recuerdo el nombre), fuera de eso, lo he hecho de manera manual y veo que están bien... no sé que sea. el Firebug de firefox me muestra otros dos errores de url, que serían...
"NetworkError: 404 Not Found - http://localhost/sessions/log/final/styles.css"
"NetworkError: 404 Not Found - http://localhost/sessions/log/final/script.js"..


No entiendo pq me salen, pero...¿podrían estar causando el error del datatable?.
Cabe anotar que éstos archivos los tengo cargados de la siguiente manera...

<link rel="stylesheet" type="text/css" href="cssmenu/styles.css">
<script type="text/javascript" src="cssmenu/script.js" ></script>
  #6 (permalink)  
Antiguo 22/06/2015, 08:47
Colaborador
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 3.648
Antigüedad: 10 años, 7 meses
Puntos: 578
Respuesta: Error Datatables. Is not a function

404 Not Found, es 404 Not Found, vamos, que no existen esos archivos o que no están puestas bien las rutas
  #7 (permalink)  
Antiguo 22/06/2015, 13:21
 
Fecha de Ingreso: marzo-2015
Mensajes: 20
Antigüedad: 9 años, 1 mes
Puntos: 1
Respuesta: Error Datatables. Is not a function

Bueno... ni esta carrera ni este foro son para mí, definitivamente no sé cómo hacerme entender...
Muchas gracias igualmente por la paciencia y la buena actitud.... Si de pronto tienen otra respuesta, será bienvenida.
  #8 (permalink)  
Antiguo 22/06/2015, 13:25
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Error Datatables. Is not a function

Vamos a ver si se entiende claro: El error 404 es devuelto por el Web Server y significa textualemnte "Archivo no encontrado". Se da cuando has indicado una ruta a un archivo, sea de script, texto, imagen, o lo que fuese, y ese archivo, en el sitio donde está alojada la web, no existe.
Si es la ruta o el nombre que indicas lo que no existe, es alg que debes verificar TU.

¿Queda claro?

En tu caso puntual hay al menos dos archivos que no existen :
Si los archivos existen, entonces verificar si la ruta es correcta, en tu PC...
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #9 (permalink)  
Antiguo 22/06/2015, 13:48
 
Fecha de Ingreso: marzo-2015
Mensajes: 20
Antigüedad: 9 años, 1 mes
Puntos: 1
Respuesta: Error Datatables. Is not a function

Intentaré hacerme entender...
Lo primero es que estas dos últimas urls son de un menú css que tengo, aclaro.... el menú css se ve y funciona perfectamente pero me aparecen estos errores.. bueno ahora les mostraré
C:\ms4w\Apache\htdocs\sessions\log\final\cssmenu\s tyles.css
C:\ms4w\Apache\htdocs\sessions\log\final\cssmenu\s cript.js
***Se supone que si no lee estos dor archivos... ¿por qué funciona?
Esas son las urls directamente traídas del pc, lo hago para que miren cómo tengo organizado el proyecto.
Resulta que estoy manejando el primer archivo que puse a la hora de crear el nuevo tema, el nombre es pendientes.php, el cual se encuentra dentro de la carpeta final.. así
C:\ms4w\Apache\htdocs\sessions\log\final\pendiente s.php...
como se puede ver anteriormente, la carpeta cssmenu está también contenida en final,

Por lo tanto, si tengo el archivo en la carpeta 'final' y la subcarpeta 'cssmenu' también, entonces quedaría así...
<link rel="stylesheet" type="text/css" href="cssmenu/styles.css">
Lo que no entiendo es por qué el error omite la parte de "cssmenu", y toma el styles.css como si estuviese en la carpeta 'final'.

AHORA, ESTO LO PREGUNTO POR QUE PIENSO QUE PUEDE ESTAR MOLESTANDO LA PARTE DE LA DATATABLE, SI UDS CREEN QUE NO ES ASÍ, PUES ENTONCES NO PASA NADA, IGUAL EL MENU FUNCIONA. PERO SÍ NECESITO LO DE DATATABLES.
eyy, Gracias en serio por la paciencia... que pena molestar tanto.

Etiquetas: datatables, function
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:18.