You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AMPscript调用SSJS内容块变量异常:输出变量名而非实际值求助

问题解决:AMPscript循环生成变量名后无法获取实际值

你当前的代码是将AMPscript语法字符串拼接成变量@test_data,直接输出时系统只会把它当作纯文本处理,不会解析执行其中的v()函数,所以显示的是字面名称而非变量实际值。

解决方法是使用TreatAsContent()函数,让系统解析拼接后的字符串中的AMPscript代码:

修改后的代码如下:

%%=ContentBlockbyKey("ssjs_testing")=%%

%%[
FOR @i = 0 TO 2 DO 
    SET @varName = Concat("@mls_number_0", @i)
    SET @test_data = TreatAsContent(Concat('%%=v(', @varName, ')=%%'))
]%%

<p>%%=v(@test_data)=%%</p>

%%[NEXT @i]%%

或者更简洁的写法,直接在输出环节使用TreatAsContent:

%%=ContentBlockbyKey("ssjs_testing")=%%

%%[
FOR @i = 0 TO 2 DO 
    SET @varName = Concat("@mls_number_0", @i)
]%%

<p>%%=TreatAsContent(Concat('%%=v(', @varName, ')=%%'))=%%</p>

%%[NEXT @i]%%

补充说明

  • TreatAsContent()的作用是强制系统解析字符串中的AMPscript语法,相当于对这段代码做二次编译执行。
  • 需确保SSJS内容块中定义的@mls_number_0X类变量为全局作用域,能被当前AMPscript代码正常访问。

内容的提问来源于stack exchange,提问作者Jason G

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 19:55:24