作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我对 if 语句有点问题,因为它只填充最后一个 elseif
%%[IF @Add3 == "Y" AND @Add4 == "Y" AND @Add5 == "N" THEN
SET @WhichNom1 = "1"
SET @WhichNom2 = "2"
ELSEIF @Add3 == "Y" AND @Add4 == "N" AND @Add5 == "Y" THEN
SET @WhichNom1 = "1"
SET @WhichNom2 = "3"
ELSEIF @Add3 == "N" AND @Add4 == "Y" AND @Add5 == "Y" THEN
SET @WhichNom1 = "1"
SET @WhichNom2 = "3"
]%%
@WhichNom1
@WhichNom2
%%[ENDIF]%%
当最后一个 ELSEIF 为 TRUE 时,上面的代码将显示两个变量。我需要做什么来检查 3 个语句并显示每个场景的 WhichNom1 和 WhichNom2?
最佳答案
如果最后一个 elseif 为真,您只打印变量。
像这样移动它们:
...
ELSEIF @Add3 == "N" AND @Add4 == "Y" AND @Add5 == "Y" THEN
SET @WhichNom1 = "1"
SET @WhichNom2 = "3"
]%%
%%[ENDIF]%%
@WhichNom1
@WhichNom2
所以它们在 IF/ELSEIF 之外。这样它们将始终被打印,但变量将根据子句设置不同。
编辑:
如果您只想在其中一个语句为真时打印变量,那么您将(如您所提到的)需要在 if 语句中打印它们,或者您可以:
SET @WhichNom1 = ""
SET @WhichNom2 = ""
在 if 语句之前,然后在它们之后:
IF @WhichNom1 != "" THEN @WhichNom1
IF @WhichNom2 != "" THEN @WhichNom2
所以只有当它们被设置为“”以外的值时才打印它们。
关于if-statement - AMPScript 中的 IF 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24821848/
我是一名优秀的程序员,十分优秀!