【发布时间】:2012-05-29 04:37:27
【问题描述】:
我有以下 JavaScript 语句,在页面加载时执行:
变量u1 填充了以下值之一:
BBSLoan|Accept|PPI+No|60MonthsBBSLoan|Refer|PPI+No|60MonthsHSBSLoan|Accept|PPI+No|48MonthsHSBSLoan|Refer|PPI+No|48Months
我被告知,条件语句中的条件永远不会得到满足 - 这是真的吗?据我所知,在每个变量上,indexOf 返回的索引是0?除非我弄错了?
编辑:澄清一下,变量 'u1' 将使用上面列出的 4 个字符串中的任何一个动态填充。 %pu1=!; 实际上是一个将填充此值的宏。
<script language="JavaScript" type="text/javascript">
var u1 = '%pu1=!;';
if (u1.indexOf('BBSLoan|Accept') > -1) {
var pvnPixel = '<img src="http://www.url1.com"/>';
document.writeln(pvnPixel);
}
if (u1.indexOf('BBSLoan|Refer') > -1) {
var pvnPixel2 = '<img src="https://www.url2.com;"/>';
document.writeln(pvnPixel2);
}
if (u1.indexOf('HSBSLoan|Accept') > -1) {
var pvnPixel3 = '<img src="https://www.url3.com;"/>';
document.writeln(pvnPixel3);
}
</script>
提前致谢!
【问题讨论】:
-
什么是
var u1 = '%pu1=!;';?如果您替换其中一个字符串,它可以正常工作:jsfiddle.net/j08691/mDSgY/1 -
@j08691 正是我的观点。我已经编辑了我的帖子,说这是一个用上面 4 个字符串之一填充值的宏。我可以看到它也可以在替换值时起作用,因此我感到困惑!
-
您的宏代码不起作用吗?正如 jsFiddle 所证明的那样,您发布的代码(减去
var u1 = '%pu1=!;';块)有效,因此您有其他代码与此冲突,或者宏代码失败。
标签: javascript if-statement conditional