gpt4 book ai didi

javascript - 为什么双引号 PHP echo 字符串中的双斜杠注释会产生 JS 错误?

转载 作者:行者123 更新时间:2023-12-01 01:58:35 26 4
gpt4 key购买 nike

所以...我有一种奇怪的编码风格 - 这是真的(参见示例),但是为什么当我使用双斜杠注释而不是多行/* */注释时 JS 会生成错误。

这是我的 PHP 代码,其中包含 JS 函数。这只是(不是)工作示例。您可以尝试使用复制粘贴:

<?php
echo "<script>";
echo "function OnTxtChange( ) {";
echo " var i = parseInt((document.getElementsByName('inp'))[0].value);";
echo " // Increment input with 1";
echo " document.getElementsByName('out').item(0).innerHTML = ++i;";
echo "}";
echo "</script>";
echo "<input style='width:3em;' type='number' value=1 name='inp' onchange='OnTxtChange( )'>";
echo "<p name='out'>2</p>";
?>

双引号字符串中的双斜杠注释:

echo " // Increment input with 1";

产生 JS 错误:

Uncaught SyntaxError: Unexpected end of input

当我使用多行/* */注释时,没有错误:

echo " /* Increment input with 1*/";

为什么?

最佳答案

使用评论

//

运算符需要位于单独的行中。您没有使用换行符,因此在第一次出现此类注释后,其他所有内容都将被注释,而不是结束函数。您将需要使用换行符

\n

换行并获得预期的代码。

关于javascript - 为什么双引号 PHP echo 字符串中的双斜杠注释会产生 JS 错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50799373/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com