我该怎么引用这个:
<tr onclick="$.colorbox({href:'information1.html'});">
放入echo " ";
?
我试过这个:
echo "<tr onclick='$.colorbox({href:'information1.html'});'>";
显示Jquery错误。
我试过这个:
echo "<tr onclick="$.colorbox({href:'information1.html'});">";
显示PHP错误。
有任何变通方法吗?感谢
答案 0 :(得分:5)
您需要转义引号符号:
echo '<tr onclick="$.colorbox({href:\"information1.html\"});">'
请注意,使用内联脚本不是一种好习惯!
echo '<tr class="foo">'
在javascript代码中:
$('.foo').click(function() {
$.colorbox({ href: "information1.html" });
});
答案 1 :(得分:4)
简单地逃避报价。虽然在这个主题上我觉得重要的是要提到这样一个事实,即一般来说,你应该使用单引号代码'代码'和双引号仅用于显示的字符串。
这源于C标准,如果您想要实施gettext()
并将您的网站翻译成多种语言,保持这种一致性将在未来帮助您。
echo '<tr onclick="$.colorbox({href:\'information1.html\'});\">';
话虽如此,有更好的方法来实现你正在做的事情。给该行一个id:
<tr id="inforow" />
当DOM准备就绪时,使用jQuery绑定到它的click事件。
$(document).ready(function() {
$(".inforow").click(function() {
$.colorbox({href:'information1.html'});
});
});
答案 2 :(得分:3)
无论何时你想要打印带有引号的字符串,只需使用转义字符'\'忽略引号作为文字结束引号,如下所示:
echo "<tr onclick=\"$.colorbox({href:'information1.html'});\">";
答案 3 :(得分:1)
试试:
echo "<tr onclick=\"$.colorbox({href:'information1.html'});\">";
答案 4 :(得分:1)
echo "<tr onclick=\"$.colorbox({href:'information1.html'});\">";
答案 5 :(得分:1)
echo "<tr onclick=\"$.colorbox({href:'information1.html'});\">";
答案 6 :(得分:1)
我会使用PHP方法而不是关心引号
echo '<tr onclick="'.
htmlentities('$.colorbox('.json_encode(array('href'=>'information.html'))).')">';
...无论您使用什么字符,都会始终创建正确的JSON和正确的HTML。
答案 7 :(得分:1)
无需引用它。
不需要发出回声“”;
保持原样:
?>
<tr onclick="$.colorbox({href:'information1.html'});">
<?
以及任何其他HTML。
这是PHP。它是HTML中的嵌入式。您可以随时离开PHP模式
答案 8 :(得分:0)
另一种方法是使用EOD
$string = <<<EOD
"duble quotation" and 'quotation' all enable
EOD;
echo $string;