Javascript PHP-回显HTML的多个嵌套引号
我正试图通过PHP响应下面一行HTMLJavascript PHP-回显HTML的多个嵌套引号,javascript,php,html,quotes,Javascript,Php,Html,Quotes,我正试图通过PHP响应下面一行HTML echo "<a class='fa fa-ban fa-2x cancelClass' onClick='cancelClass('$id', '$formattedDate', '$time')'></a><p class='text-center'>".$formattedDate." @ $time</p>"; echo” 它应该如何进行颜色编码(另一个函数的示例) 将其更改为以下内容 echo "
echo "<a class='fa fa-ban fa-2x cancelClass' onClick='cancelClass('$id', '$formattedDate', '$time')'></a><p class='text-center'>".$formattedDate." @ $time</p>";
echo”
它应该如何进行颜色编码(另一个函数的示例)
将其更改为以下内容
echo "<a class=\"fa fa-ban fa-2x cancelClass\" onClick=\"cancelClass('$id', '$formattedDate', '$time')\"></a><p class=\"text-center\">".$formattedDate." @ $time</p>";
echo“”$formattedDate.@$time
”;
对属性双引号进行转义可以得到一个规范化的html
echo "<a class=\"fa fa-ban fa-2x cancelClass\" onClick=\"cancelClass('$id', '$formattedDate', '$time')\"></a><p class=\"text-center\">".$formattedDate." @ $time</p>";
echo“”$formattedDate.@$time
”;
转义属性双引号可以获得规范化的html,您需要执行以下操作:
echo "<a class='fa fa-ban fa-2x cancelClass' onClick=\"cancelClass('".$id."', '".$formattedDate."', '".$time."')\"></a><p class='text-center'>".$formattedDate." @ $time</p>";
echo“”$formattedDate.@$time
”;
您需要执行以下操作:
echo "<a class='fa fa-ban fa-2x cancelClass' onClick=\"cancelClass('".$id."', '".$formattedDate."', '".$time."')\"></a><p class='text-center'>".$formattedDate." @ $time</p>";
echo“”$formattedDate.@$time
”;
它们确实得到了正确的解析,但是您指定了错误的使用方法。Javascript无法区分用于包装字符串变量的引号和用于包装“onclick”值的引号,它认为onclick结束得太早
要区分它们,你必须先将它们转义。括号内的部分使用\“
echo "<a class='fa fa-ban fa-2x cancelClass' onClick='cancelClass(\"$id\", \"$formattedDate\", \"$time\")'></a><p class='text-center'>".$formattedDate." @ $time</p>";
echo“”$formattedDate.@$time
”;
我们应该做到这一点
或者,不要对整个字符串使用echo,只需直接输出其中的大部分:
?> //temporarily stop interpreting the file as PHP, so the next bit will be output directly as raw HTML
<a class='fa fa-ban fa-2x cancelClass' onClick='cancelClass("<?php echo $id;?>", "<?php echo $formattedDate; ?>", "<?php echo $time;?>")'></a><p class='text-center'>".$formattedDate." @ $time</p>
<?php //continue with PHP
?>//暂时停止将文件解释为PHP,这样下一位将直接作为原始HTML输出
它们确实得到了正确的解析,但是您指定了错误的要使用的。Javascript无法区分用于包装字符串变量的引号和用于包装“onclick”值的引号,它认为onclick结束得太早
要区分它们,你就必须避开它们。使用\”
处理括号内的内容
echo "<a class='fa fa-ban fa-2x cancelClass' onClick='cancelClass(\"$id\", \"$formattedDate\", \"$time\")'></a><p class='text-center'>".$formattedDate." @ $time</p>";
echo“”$formattedDate.@$time
”;
我们应该做到这一点
或者,不要对整个字符串使用echo,只需直接输出其中的大部分:
?> //temporarily stop interpreting the file as PHP, so the next bit will be output directly as raw HTML
<a class='fa fa-ban fa-2x cancelClass' onClick='cancelClass("<?php echo $id;?>", "<?php echo $formattedDate; ?>", "<?php echo $time;?>")'></a><p class='text-center'>".$formattedDate." @ $time</p>
<?php //continue with PHP
?>//暂时停止将文件解释为PHP,这样下一位将直接作为原始HTML输出
在HTML中使用双引号。
使用带有ENT_引号的htmlspecialchars转义具有双引号的值
echo '<a class="fa fa-ban fa-2x cancelClass" onClick="'.htmlspecialchars("cancelClass('$id', '$formattedDate', '$time')", ENT_QUOTES).
'"></a><p class="text-center">'.$formattedDate." @ $time</p>";
echo'。$formattedDate.@$time
”;
在HTML中使用双引号。
使用带有ENT_引号的htmlspecialchars转义具有双引号的值
echo '<a class="fa fa-ban fa-2x cancelClass" onClick="'.htmlspecialchars("cancelClass('$id', '$formattedDate', '$time')", ENT_QUOTES).
'"></a><p class="text-center">'.$formattedDate." @ $time</p>";
echo'。$formattedDate.@$time
”;
PHP区分单引号和双引号。您可以尝试在使用中保持一致。
PHP区分单引号和双引号。你可以试着在使用上保持一致。“
啊,谢谢。忘记了反斜杠的救生能力。啊,谢谢。忘记了反斜杠的救生能力。