天翎MyApps技术社区 - 低代码平台 | 流程管理系统 | BPM软件

 找回密码
 注册成为天翎用户
查看: 2325|回复: 8

关于平台getParameterAsArray方法的错误提示

[复制链接]
jariy 发表于 2011-11-11 10:54:11 | 显示全部楼层 |阅读模式
本帖最后由 shary 于 2011-11-18 10:14 编辑

如图


这个代码的params[0]肯定是null才会报这个错,由于我的项目里用了大量的getParameterAsArray方法,你总不至于叫我每个写了这个方法的地方都是加一个判断语句是吧?所以最好的方法就是在这个getParameterAsArray里的主体里修改这个方法,

  1. /**
  2. * 获取参数值,并以字符数组的形式返回
  3. *
  4. * @param paramName
  5. *            参数名;
  6. * @return 返回参数值,以字符数组对象返回
  7. */
  8. function getParameterAsArray(paramName) {
  9.         var _tmp_params=getParameter(paramName); //这是我加的代码
  10.         if(_tmp_params!=null && ""!=_tmp_params){
  11.                 //下面是原来的方法,外面是我加入的代码,这样改OK否?
  12.                 var params = $WEB.getParameterAsArray(paramName);       
  13.                 if (params!=null && params.length==1 && params[0].indexOf(";")>0)
  14.                         params = splitText(params[0],";");
  15.                 return params;
  16.         }
  17.         return new Array();
  18. }
复制代码
麻烦尽快给个答复!谢谢!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册成为天翎用户

x
admin 发表于 2011-11-11 11:06:17 | 显示全部楼层
您好,刚问过研发的他们说这样修改可以。
 楼主| jariy 发表于 2011-11-11 11:11:55 | 显示全部楼层
这个我在外面通过数组获取的话应该不会报错吧?
admin 发表于 2011-11-11 11:21:03 | 显示全部楼层
应该不会。您先尝试下。如果不行我们再沟通。因为底层的东西我也不太清楚。研发同事跟我说可以这么处理。
 楼主| jariy 发表于 2011-11-14 16:54:00 | 显示全部楼层
我改的baselib.js里的方法,我在iscript函数库里调用的方法,比如getParameterAsArray是调用的baselib.js里的方法吗?

我上周五有改这个baselib.js里的这个方法,可是现在我的系统还是报下面的错误啊,应该是我改的代码没有生效还是别的原因?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册成为天翎用户

x
 楼主| jariy 发表于 2011-11-14 17:19:18 | 显示全部楼层


上面是我修改的文件路径,不知道对不对?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册成为天翎用户

x
shary 发表于 2011-11-14 17:36:16 | 显示全部楼层
您好,对应的是该baselib.js文件的。
您试一下把这个方法改成如下试一下:
function getParameterAsArray(paramName) {
        var s=$WEB.getParameterAsString(paramName);
        if(s!=null && s!=""){
        var params = $WEB.getParameterAsArray(paramName);
        if (params!=null && params.length==1 && params[0]!=null && params[0].indexOf(";")>0)
                params = splitText(params[0],";");
        return params;
        }else{
                null;
        }
}
 楼主| jariy 发表于 2011-11-14 17:38:46 | 显示全部楼层
返回null的话会不会有问题,因为我外面是直接获取这个值的,
比如var params = getParameterAsArray(paramName);
for(var i=0;i<params.length;i++){
    var tmp=params[i];//你确定这里不会有问题?
}
admin 发表于 2011-11-14 17:50:14 | 显示全部楼层
不会。因为  var s=$WEB.getParameterAsString(paramName);这个部分是getParameter()函数部分的。之前都是先判断这个再调用getParameterAsArray()函数。你先试一下。有问题我们再沟通。

本版积分规则

QQ|手机版|天翎MyApps技术社区 ( 粤ICP备11093750号 )

GMT+8, 2026-8-12 15:28

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表