我正在尝试在 php echo 语句中使用 javascript 函数。正在使用 showme 和 onclick 函数,并且必须在 showme 函数中传递值。
下面的代码不起作用。
echo"
<ul>
<li><a href='javascript:void(0);' onclick='showme('Test','','10.70725','-61.55391','','Tester');' >$id</a></li>
</ul>
";
我该如何解决?
我正在尝试在 php echo 语句中使用 javascript 函数。正在使用 showme 和 onclick 函数,并且必须在 showme 函数中传递值。
下面的代码不起作用。
echo"
<ul>
<li><a href='javascript:void(0);' onclick='showme('Test','','10.70725','-61.55391','','Tester');' >$id</a></li>
</ul>
";
我该如何解决?
echo"
<ul>
<li><a href='javascript:void(0);' onclick=\"showme('Test','','10.70725','-61.55391','','Tester');\" >$id</a></li>
</ul>
";
所以不要使用 PHP 来回声,只需让它像这样,并"
在你的周围添加引号showme()
<ul>
<li>
<a href="javascript:void(0);" onclick="showme('Test','','10.70725','-61.55391','','Tester');"><?php echo $id; ?></a>
</li>
</ul>
编辑:正如你所说,你在一个while循环中运行它,你可以这样做
我假设您正在从数据库中提取数据
<?php
while($blah = mysqli_fetch_array($fetch_blah)) {
?>
<!--HTML Part Goes Here-->
<ul>
<li>
<a href="javascript:void(0);" onclick="showme('Test','','10.70725','-61.55391','','Tester');"><?php echo $blah['id']; ?></a>
</li>
</ul>
<?php
}
?>
这会做,添加\" \"
你的 echo :
echo"
<ul>
<li><a href='javascript:void(0);' onclick=\"showme('Test','','10.70725','-61.55391','','Tester');\" >$id</a> </li>
</ul>
";
请避开你的双引号。
echo "
<ul>
<li><a href=\"javascript:void(0);\" onclick=\"showme('Test','','10.70725','-61.55391','','Tester');\" >$id</a></li>
</ul>
";
为了使事情更易于阅读,请尝试退出 PHP 以显示您的 HTML(而不是使用echo
来显示它):
?>
<ul>
<li>
<a href="javascript:void(0);" onclick="showme('Test','','10.70725','-61.55391','','Tester');" ><?=$id;?></a>
</li>
</ul>
<?php
这将修复原始代码中的引号转义问题,并使其更易于阅读。
检查转义字符/转义序列 [参考: http: //php.net/manual/en/regexp.reference.escape.php ]
<li><a href='javascript:void(0);' onclick=\"showme('Test','','10.70725','-61.55391','','Tester');\">$id</a></li>
要使用双引号,请使用转义字符 \" 这会导致 -> "
正如其他答案中所建议的那样,简单地回显 $id 而不是整个 html 片段
echo " ...
onclick="showme('Test','','10.70725','-61.55391','','Tester');"><?php echo $id; ?></a>
...";
尝试在 html 中使用引号而不是撇号:
$result =<<<TSTSTR
<ul>
<li>
<a href="javascript:void(0);' onclick='showme('Test','','10.70725','-61.55391','','Tester');'">$id</a>
</li>
</ul>
TSTSTR;
echo $result;