我有一些 id(来自数据库的主键),格式如下:2019/34
。我将这段代码显示在一个我可以正常看到的表格中。当我尝试将 PHP 中的这个变量发送到 javascript 方法时,问题就来了。由于我在 id 中使用斜杠,当我将 php 变量作为 javascript 方法的参数发送时,它会进行计数。当我要发送参数 2019/34
时,它将 2019 和 34 分开。
在通过参数发送之前,我尝试将实际的 php 字符串变量解析为字符串。
我曾尝试使用引号发送参数,但它也很重要。
我什至尝试将 id(2019 和 34)分开,使用两个参数将它们发送到 javascript 方法,并再次在该方法中制作完整的字符串。但是当我使用 explode 方法 (explode("/",$id)
) 时,它会再次计数。
echo "<td><a href='javascript:newConcepto(".$id.")'></a></td>"
Expected object sended: "2019/34".
Actual object sended: "59.3823529" (The division of 2019 and 34).
最佳答案
如果您不将变量放在引号中(从 JavaScript 的 Angular 来看),它会假定您正在做数学运算 - 因为 2019/34
是一个数学方程式。用引号括起来,它变成了一个字符串!为避免与 href
属性发生冲突,请在此处使用双引号 - 为避免与 PHP 双引号发生冲突,请将其转义。
echo "<td><a href=\"javascript:newConcepto('$id')\"></a></td>";
PHP 变量在双引号内被解析,所以你也不需要连接值,你可以内联完成。不过,通过执行 newConcepto('".$id."')
也没有错。
关于javascript - 在 PHP 中使用斜杠 (/) 的字符串问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56162579/