duanhanzi8328 2017-02-22 20:59
浏览 56

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

I am doing a pager and I have created a function which is invoked once the document is loaded, but for some reason, when I try to use it a second time, I get the error "is not a function", I would like to know why this happens Code is as follows:

This document loads when starting the page

$(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]);
            }
        });
    }

    });

The code that calls the pager is the following

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>';
        }

leaving the function pagination outside the ready event and initializing it, everything works fine, but in that case I can not recover the values of the inputs

$(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]);
        }
    });
}

I don't understand why I can not continue using the pagination function in the first case

  • 写回答

1条回答 默认 最新

  • dql123000 2017-02-22 21:29
    关注

    Try making your function into a global variable:

      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));
    
    评论

报告相同问题?

悬赏问题

  • ¥15 微信会员卡接入微信支付商户号收款
  • ¥15 如何获取烟草零售终端数据
  • ¥15 数学建模招标中位数问题
  • ¥15 phython路径名过长报错 不知道什么问题
  • ¥15 深度学习中模型转换该怎么实现
  • ¥15 HLs设计手写数字识别程序编译通不过
  • ¥15 Stata外部命令安装问题求帮助!
  • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
  • ¥15 TYPCE母转母,插入认方向
  • ¥15 如何用python向钉钉机器人发送可以放大的图片?