【发布时间】:2021-07-24 19:01:49
【问题描述】:
我试图从 PHP 传递一个字符串和一个 int 作为 JavaScript 函数的参数。我尝试了很多不同的解决方案,并了解它与转义字符有关。但我无法弄清楚,所以我希望你能帮助我。 这条线给我带来了麻烦:
<button onclick="addToCart(<?php echo $productName ?>, <?php echo $price ?>)">Add to cart</button>
例如,如果我通过id,没有问题,所以它与产品名称是一个字符串的事实有关。
完整代码:
<?php
$databaseConnection = connectToDatabase();
$sql = "SELECT * FROM product";
$res = $databaseConnection->query($sql);
$count = mysqli_num_rows($res);
if ($count > 0) {
//products available
while ($row = mysqli_fetch_assoc($res)) {
$id = $row['id'];
$productName = $row['productName'];
$imageName = $row['imageName'];
$price = $row['price'];
$quantity = $row['quantity'];
?>
<!--display all products-->
<div class="col-4">
<img src="img/<?php echo $imageName; ?>">
<h4><?php echo $productName; ?></h4>
<p><?php echo $price; ?> kr</p>
<p style="color: green"><?php echo $quantity; ?> left in stock</p>
<button onclick="addToCart(<?php echo $productName ?>, <?php echo $price ?>)">Add to cart</button>
</div>
<?php
}
}
?>
该函数在它自己的 .js 文件中,如果我传递给整数而不是字符串,则可以工作。
function addToCart(x,y) {
alert(x + y);
}
【问题讨论】:
-
引用字符串。
-
是的,我不知道该怎么做。我试过这样的东西,但没有用:
-
PHP 中没有。 PHP标签前后,所以它是JS的一部分。
-
这也不起作用。
标签: javascript php function arguments