纠结死我的一个参数化问题,不知道大家碰到过没~~~~~~~~~~
大家知道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中的值获取不了,求高手正解!! 尖端 不是很尖端啊~莫沉莫沉{:4_97:} 本帖最后由 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 类型 嗯,是楼上说的那个意思,不过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:20 编辑
xxx只是随便写的个变量而已
要拼接很简单 lr_paramarr_idx("M",lr_eval_string("{num}")) 结果值 用函数lr_save_string先存进临时参数,再用这个参数在后面的url中使用即可
9.X不到的版本就麻烦点,就先要存C变量里了,再用函数lr_save_string 呵呵,我的是8.X的版本,麻烦不怕,您说的那个临时参数是什么类型的呢?好像除了web_reg_save_param函数得到的参数,其他类型参数在url里就成文本了吧? 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}",
……
)
只能解释到这里了,后面就自己研究吧 嗯,多谢楼上的了,获益匪浅
页:
[1]