PrisonerManager.getPrisoner(id,function(list){checkPrisonerNoCall(list,id)});//回调函数传多个参
如果根据id可以查到值没有问题,也就是说list != null,正常运行,如果查不到结果,list==null,回调函数不会去调checkPrisonerNoCall(list,id)这个函数了,直接弹出一个alert("a server error has occured")错误,麻烦高手帮解决一下.

解决方案 »

  1.   

    checkPrisonerNoCall这是一个什么方法????
      

  2.   

    “如果根据id可以查到值没有问题,也就是说list != null,正常运行,如果查不到结果,list==null,回调函数不会去调checkPrisonerNoCall(list,id)这个函数了”
    为什么?按照我的理解,是不管list是不是null,都会执行checkPrisonerNoCall
    可能我不懂你的意思,你的解释是怎么来的?
      

  3.   

    function checkPrisonerNo(prisonerNo)
         {
         PrisonerManager.getPrisoner(id,function(list){checkPrisonerNoCall(list,id)});//回调函数传多个参
         }
         var checkPrisonerNoCall = function(list,id)
         {
         alert("2");
         }
    就是这么写的,PrisonerManager.getPrisoner(id)这是一个方法,如果这个方法查不到值就会报错.
      

  4.   

    PrisonerManager.getPrisoner(id,function(list){checkPrisonerNoCall(list,id)});
    你这里的id是什么?是公有字段?是不是应该是prisonerNo?
      

  5.   

    PrisonerManager.getPrisoner这个方法没有对参数进行是否为空的判断,所以报的错,谢谢.
      

  6.   

    如果实在不行就在那边默认返回值吧,不让他返回null。