代码显示数据库数据&我想为数量= 1隐藏“ minusbtn”并显示锚标记,当它再次增加时,两者都会显示。 jQuery仅适用于第一个提取的数据库项目,因此请指导我jquery中将进行哪些更改,以便它将适用于从数据库获取的所有项目。
<?php
//Get all these items
$query = mysql_query("select * from products_added where `username` = '".mysql_real_escape_string($_SESSION["REMOTE_ADDR"])."'");
?>
<?php
//Fetch all added items and display to the screen for the specified user
while ($row = mysql_fetch_assoc($query))
{
$item_id = $row["id"];
$item_name = $row["item_added"];
$price = $row["price"];
$quantity = $row["quantity"];
$amount = $row["amount"];
$date = $row["date"];
?>
<div id="items_cover<?php echo $item_id;?>">
<dl class="row order-item-total" >
<dt class="col-sm-2 text-weight-light text-right"><?php echo $item_name; ?></dt>
<dd class="col-sm-8 tempptr">
<input type='button' value='-' class='qtyminus' id="minusbtn" field='quantity' data-id="<?php echo $row["id"]; ?>" data-value="<?php echo $row['price'];?>"/>
<input type='text' name='quantity' id="qty" value="<?php echo $quantity ;?>" class='qty' data-value="<?php echo $quantity ;?>"/>
<input type='button' value='+' class='qtyplus' id="plusbtn" field='quantity' data-id="<?php echo $row["id"]; ?>" data-value="<?php echo $row['price'];?>"/> X <?php echo $row['price'];?>
<input type="hidden" value="<?php echo $amount; ?>" id="amount1">
</dd>
<dd class="col-sm-2 text-spl-color text-right totalamt" id="totalamt">Rs.<?php echo $amount; ?></dd>
<dd class="col-sm-1">
<a href="javascript:void(0);" style="width:10px; height:10px; padding:3px;padding-left:8px;padding-right:8px; text-decoration:none;" id="vpb_cart_buttons" title="Remove this item" onclick="vpb_remove_this_item('<?php echo $item_id; ?>');">X</a>
</dd>
</dl>
</div>
<?php } ?>
仅适用于第一个div的jquery建议解决方案
$(document).ready(function(){
var qty=$('.qty').attr('data-value');
if(qty==1){
$("#vpb_cart_buttons").hide();
}else{
$("#vpb_cart_buttons").hide();
}
});
答案 0 :(得分:0)
这是因为您正在while循环中使用相同ID的HTML元素。这会导致重复的ID,而根据规则,ID在页面上应该是唯一的。 因此,JQuery仅选择第一个匹配的ID。为此,请使用类。