简体   繁体   English

将JavaScript代码放在HTML代码行中不起作用

[英]Placing javascript code in an HTML code line doesn't work

JavaScript won't accept the code below, whats wrong? JavaScript无法接受以下代码,怎么了?

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

$tagOn is a Boolean. $tagOn是一个布尔值。

I think it's clearer if you define the variable first. 我认为如果先定义变量会更清楚。 It gets confusing if you put too much logic inline. 如果您将太多逻辑内联,则会变得令人困惑。

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

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

You're forgetting the semi-colons after each statement, try something like this: 您会在每条语句后忘记分号,请尝试如下操作:

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

It might just be the missing semi-colons 可能只是缺少的分号

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

A cleaner way of doing this is with the ternary operator: 一种更干净的方法是使用三元运算符:

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

You forget semicolons ! 你忘了分号!

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

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM