如何在JavaScript中使用Marketo模板元变量?语法正确性咨询
在JavaScript中使用Marketo模板变量的正确方式
可以在JavaScript中使用Marketo模板变量,但你当前的写法存在两个关键问题,需要调整:
1. 变量名不匹配
你的meta标签定义的变量id是var,但JS代码里用的是${show_video_1},两者必须统一。比如把meta标签的id改成show_video_1,保持和JS中的变量名一致:
<meta class="mktoBoolean" id="show_video_1" mktoName="Show data" false_value="none" true_value="block">
2. 必须给变量添加引号
Marketo在渲染页面时,会将${show_video_1}替换为你设置的false_value或true_value(即字符串"none"或"block")。如果不加引号,JS会把这些值当成未定义的变量,直接抛出语法错误。
正确的JS写法应该给变量包裹引号:
if("${show_video_1}" === "none") { console.log("Hello World"); }
如果习惯用ES6模板字符串,也可以写成:
if(`${show_video_1}` === "none") { console.log("Hello World"); }
补充说明
- 若Marketo变量是数值类型(比如
mktoNumber),则不需要加引号,直接使用${变量名}即可; - 确保Marketo变量在页面渲染时已经被正确替换,可通过查看页面源码确认替换后的JS代码是否符合预期。
内容的提问来源于stack exchange,提问作者Sakib
相关产品推荐
相关产品推荐

