我有一个PHP购物车,它将价格和数量反映到表格中。每个Td的id被命名为p1,p2,p3..etc。和q1,q2,q3..etc。这样我就可以将它们作为目标用于通过javascript显示总购物车成本。当我尝试获取id的值并将其置于警报中时,我得到“未定义”。我可以看到该值实际上是一个数字,为什么我得到未定义?有没有办法通过其ID访问Td的值,以便它不是未定义的?我很感激你的帮助。如果需要,会发布更多代码。
var p1= document.getElementById("p1").value;
var q1= document.getElementById("q1").value;
var total= parseFloat(p1) * parseFloat(q1);
window.alert(p1);
以下是此页面的代码:
<div id="shopping-cart">
<div class="txt-heading">
<div class="label">Shopping Cart</div>
<a id="btnEmpty"><img src="empty-cart.png" id= "emptycart"
alt="empty-cart" title="Empty Cart" /></a>
</div>
<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "secure_login";
$member_id = $_SESSION['login_user'];
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
?>
<?php
$query = "select * from tbl_cart WHERE member_id= '$member_id'";
$result = mysqli_query($conn,$query);
if (!$result) {
printf("Error: %s\n", mysqli_error($conn));
exit();
}
echo "<table id='anyclass'>";
echo "<tr>
<th id='product1'>Product</th>
<th id='price1'>Price</th>
<th id='quantity1'>Quantity</th>
<th id='remove1'>Remove</th>
</tr>";
$i=1;
while($row = $result->fetch_assoc()) {
echo "<tr class= 'trhide'>";
echo "<td id='product'>".$row['product_id']."</td>";
echo "<td id= 'p$i' >".$row['price']."</td>";
echo "<td id= 'q$i' >". "<input style='border:none' type = 'text'
class= 'change' id= $row[id] value= $row[quantity] name= $row[id] data-id=
$row[id] >" . "</td>";
echo "<td id= 'delete'><span class='delete' data-id= $row[id] ><img
src=delete.svg></span></td>
</tr>";
$i++;
}
echo "<tr>
<td>Total:</td>
<td id= 'total'></td>
<td></td>
<td></td>
</tr>";
echo "</table>";
?>
答案 0 :(得分:1)
td
没有value
s;他们有innerText
个。改变这些:
var p1= document.getElementById("p1").value;
var q1= document.getElementById("q1").value;
到这些:
var p1= document.getElementById("p1").innerText;
var q1= document.getElementById("q1").innerText;
答案 1 :(得分:1)
我为你写了3个例子
值从输入中获取值
innerHTML 获取内容
outerHTML 获取整个标记的内容
npm install package_name