2012-11-27 111 views
0

JavaScript不接受下面的代码,最新的错误是什么?在HTML代码行中放置javascript代码不起作用

<a href="#" <?php if ($tagOn) {echo 'id="tagOn"' } else {echo 'id="tagOff"' } ?> 
    onclick="addToSearch('xyz')">Xyz</a> 

$tagOn是一个布尔值。

+1

您在echo语句后缺少分号。 –

回答

3

我认为如果你首先定义变量就更清楚了。如果你把太多的逻辑内联,会变得混乱。

<?php $id = $tagOn ? "tagOn" : "tagOff"; ?> 

<a href="#" "<?php echo $id ?> onclick="addToSearch('xyz')">Xyz</a> 
+1

我没有看到这个设置'id' –

+1

谢谢所有 - 它是分号:p –

0

你每个语句后忘了分号,尝试这样的事情:

<a href="#" <?php if ($tagOn) { echo 'id="tagOn"'; } else { echo 'id="tagOff"'; } ?> 
    onclick="addToSearch('xyz')">Xyz</a> 
0

威力只是缺少的分号

<a href="#" <?php if ($tagOn) { echo 'id="tagOn"'; } else { echo 'id="tagOff"'; } ?> 
    onclick="addToSearch('xyz')">Xyz</a> 

一清洁的做法是用三元运算符:

<a href="#" id=<?php echo ($tagOn) ? '"tagOn"' : '"tagOff"'; ?> 
    onclick="addToSearch('xyz')">Xyz</a> 
0

你忘记了分号!

<a href="#" <?php if ($tagOn) { echo 'id="tagOn"'; } else { echo 'id="tagOff"'; } ?> 
    onclick="addToSearch('xyz')">Xyz</a>