繁体   English   中英

jquery:我只能使用一次函数,“不是函数”错误

[英]jquery: I can only use a function once,“is not a function” error

我正在做一个寻呼机,我已经创建了一个文件加载后调用的函数,但由于某种原因,当我第二次尝试使用它时,我得到错误“不是函数”,我想知道为什么会发生这种情况代码如下:

启动页面时会加载此文档

$(function(){
    var textoPag=$("#textoPag").val();
    var tipoBusq=$("#tipoBusq").val();


        pagination(1);

       function ajax_start(){

            $body = $("body");
            $body.addClass("loading");
        }

        function ajax_stop(){
            $body = $("body");
             $body.removeClass("loading");
        }


    function pagination(partida){
        var url = MODELO+'paginacion.php';
        params={act:"paginacion",
                part:partida,
                palabra:textoPag
                }
        $.ajax({
            type:'POST',
            url:url,
            data:params,
            success:function(data){
                var array = eval(data);
                console.log(array[1]);
                $("#contePag").append(array[1]);
                //$('#agrega-registros').html(array[0]);
                $('#pagination').html(array[0]);
            }
        });
    }

    });

调用寻呼机的代码如下

switch ($actividad) {
            case 'paginacion':
                $paginaActual = $_POST['part'];
                $palabra=$_POST['palabra'];
                $string = SERVER."paginador";
                $data = file_get_contents($string);
                $json = json_decode($data,true);


                if ($json["success"]==true)
                {
                 $nroPag=$json["cont"]; 
                 $nroLotes = 2;
                 $nroPaginas = ceil($nroPag/$nroLotes);
                 $lista = '';
                 $tabla = '';
                }
                if($paginaActual > 1){
                $lista = $lista.'<li><a href="javascript:pagination('.($paginaActual-1).');">Anterior</a></li>';
                }
        for($i=1; $i<=$nroPaginas; $i++){
            if($i == $paginaActual){
                $lista = $lista.'<li class="active"><a href="javascript:pagination('.$i.');">'.$i.'</a></li>';
            }else{
                $lista = $lista.'<li><a href="javascript:pagination('.$i.');">'.$i.'</a></li>';
            }
        }
        if($paginaActual < $nroPaginas){
            $lista = $lista.'<li><a href="javascript:pagination('.($paginaActual+1).');">Siguiente</a></li>';
        }

将函数分页留在ready事件之外并初始化它,一切正常,但在这种情况下我无法恢复输入的值

$(document).ready(pagination(1));
  $(function(){
    ............
    ...........
   });
   function pagination(partida){
    var url = MODELO+'paginacion.php';
    params={act:"paginacion",
            part:partida,
            palabra:textoPag
            }
    $.ajax({
        type:'POST',
        url:url,
        data:params,
        success:function(data){
            var array = eval(data);
            console.log(array[1]);
            $("#contePag").append(array[1]);
            //$('#agrega-registros').html(array[0]);
            $('#pagination').html(array[0]);
        }
    });
}

我不明白为什么我不能继续使用第一种情况下的分页功能

尝试将您的函数变为全局变量:

  var pagination;

  $(function(){
    ............
    ...........
   });
   var pagination = function (partida){
    var url = MODELO+'paginacion.php';
    params={act:"paginacion",
            part:partida,
            palabra:textoPag
            }
    $.ajax({
        type:'POST',
        url:url,
        data:params,
        success:function(data){
            var array = eval(data);
            console.log(array[1]);
            $("#contePag").append(array[1]);
            //$('#agrega-registros').html(array[0]);
            $('#pagination').html(array[0]);
        }
    });
}

$(document).ready(pagination(1));

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM