clickers 发表于 2010-10-20 14:20:14

纠结死我的一个参数化问题,不知道大家碰到过没~~~~~~~~~~

大家知道web_reg_save_param这个函数,假设函数中参数名称为M,当函数中有参数项ord=all时,这个函数会获取页面中所有符合条件的值存入参数M中,这些值按获取的先后顺序分别为M_1,M_2,M_3……
问题来了,现在我想每次迭代都能顺序获取M_1,M_2,M_3……从而能获取它们里面存的值,这样我又将M参数化为FILE类型P,将M_1,M_2,M_3……放在P中,最后语句的结构就变成{{P}}。
可是在开始的时候能正确获取值,当页面刷新之后,这个值就获取不了了,只能停留在如{M_1}这个阶段,M_1中的值获取不了,求高手正解!!

qzj_test 发表于 2010-10-20 14:25:30

尖端

clickers 发表于 2010-10-20 14:33:16

不是很尖端啊~莫沉莫沉{:4_97:}

skyzhu 发表于 2010-10-20 14:48:48

本帖最后由 skyzhu 于 2010-10-20 14:50 编辑

不是这样做的。
每次的迭代你都会 获取 M_1,M_2,M_3 吧, 获取之后,迭代1的使用M_1,迭代2的使用M_2
是这个意思的话
9.X 可以这样,参数化后面的num
xxx = lr_paramarr_idx("M",lr_eval_string("{num}"));
9.X不到的版本:
sprintf(xxx,"{M_%s}",lr_eval_string("{num}"));
num参数设置为 Iteration Number 类型

clickers 发表于 2010-10-20 15:15:20

嗯,是楼上说的那个意思,不过XXX要怎么使用呢,像下面这样?
web_url("navigation.do",
            "URL=https://192.168.2.160:8443/KTPCS/navigation.do?kw=LUXOGPPPSPTPXUHGU2FFZ8GGF22L4462&pn={XXX}",
   ……
)
我觉得这样肯定不行吧,估计要用到lr_eval_string,但是这个函数在语句里面是不可执行的啊

skyzhu 发表于 2010-10-20 15:18:36

本帖最后由 skyzhu 于 2010-10-20 15:20 编辑

xxx只是随便写的个变量而已
要拼接很简单 lr_paramarr_idx("M",lr_eval_string("{num}")) 结果值 用函数lr_save_string先存进临时参数,再用这个参数在后面的url中使用即可

9.X不到的版本就麻烦点,就先要存C变量里了,再用函数lr_save_string

clickers 发表于 2010-10-20 15:29:46

呵呵,我的是8.X的版本,麻烦不怕,您说的那个临时参数是什么类型的呢?好像除了web_reg_save_param函数得到的参数,其他类型参数在url里就成文本了吧?

skyzhu 发表于 2010-10-20 15:41:41

char xxx;
//    中间web_reg_save_param 获取 M 的ALL
sprintf(xxx,"{M_%s}",lr_eval_string("{num}"));
//   num参数设置为 Iteration Number 类型
lr_save_string(lr_eval_string(xxx),"newM");

web_url("navigation.do",
            "URL=https://192.168.2.160:8443/KTPCS/navigation.do?kw=LUXOGPPPSPTPXUHGU2FFZ8GGF22L4462&pn={newM}",
   ……
)

只能解释到这里了,后面就自己研究吧

clickers 发表于 2010-10-20 15:43:20

嗯,多谢楼上的了,获益匪浅
页: [1]
查看完整版本: 纠结死我的一个参数化问题,不知道大家碰到过没~~~~~~~~~~