如何在 php 循环中单击按钮时显示隐藏框中的值

发布于 2025-01-11 02:38:27 字数 1946 浏览 0 评论 0原文

我试图建立商店简单的学习网站,但当我单击按钮时我陷入困境。当我点击它时什么也没有发生。当我单击按钮时,它应该显示隐藏按钮上值的文本。

下面是我的 php 代码,

$i=1;
                         while($rows = mysqli_fetch_assoc($varresultP)){
                           echo "<button type='button' class='btn btn-outline-primary' onclick='myFunction()' >".$rows['var_name']."</button>";
                           echo "<input type='hidden'  name='price' value=".$rows['price']." id='price{$i}'>";
                           echo "<input type='hidden' value=".$rows['id']." id='id{$i}'>";
                           echo "<input type='hidden' value=".$rows['quantity']." id='quantity{$i}'>";
                            
                            $i++;
                         }

结果是出现多个按钮,但当我单击按钮时没有任何反应。总计按钮基于数据库中有多少数据。

下面是

function myFunction() {
  for(var i=1; i<5; i++){
  var x = document.getElementById("price"+i).value;
  document.getElementById("sendPrice").innerHTML = x;

  var x = document.getElementById("id"+i).value;
  document.getElementById("idDiv").innerHTML = x;

  var x = document.getElementById("quantity"+i).value;
  document.getElementById("showQuantity").innerHTML = x;
  }
}

我想要在 div id(sendPrice) 上显示的来自 id(price) 的 jsquery 值,以及来自 id(id) 的值需要在 href 按钮中显示,来自 id(quantity) 的值,当按钮单击时,我需要它将显示在 div id(showQuantity) 上。

下面是html代码

    <div class ='row' style='padding: 30px; width: 100px;'><p>USD: <label class='p2--semi-bold c-red' id='sendPrice'></p></label></div>
<div class ='row' style='padding: 30px; width: 100px;'><p>Productid: <label id='idDiv'></p></label></div>
<div class ='row' style='padding: 30px; width: 100px;'><p>Quantity: <label id='showQuantity'></p></label></div>

i trying to build shop simple site for learning but i got stuck when i click button. when i click it nothing happen. it should showing text from value on hidden button when i click button.

below is my php code

$i=1;
                         while($rows = mysqli_fetch_assoc($varresultP)){
                           echo "<button type='button' class='btn btn-outline-primary' onclick='myFunction()' >".$rows['var_name']."</button>";
                           echo "<input type='hidden'  name='price' value=".$rows['price']." id='price{$i}'>";
                           echo "<input type='hidden' value=".$rows['id']." id='id{$i}'>";
                           echo "<input type='hidden' value=".$rows['quantity']." id='quantity{$i}'>";
                            
                            $i++;
                         }

the result is multiple button appear but nothing happen when i click button. total button is based from database how many data have.

below is my jsquery

function myFunction() {
  for(var i=1; i<5; i++){
  var x = document.getElementById("price"+i).value;
  document.getElementById("sendPrice").innerHTML = x;

  var x = document.getElementById("id"+i).value;
  document.getElementById("idDiv").innerHTML = x;

  var x = document.getElementById("quantity"+i).value;
  document.getElementById("showQuantity").innerHTML = x;
  }
}

value from id(price) that i want show on div id(sendPrice), value from id(id) that i need to show in href button, value from id(quantity) that i need it will appear on div id(showQuantity) when button is onclick.

below is html code

    <div class ='row' style='padding: 30px; width: 100px;'><p>USD: <label class='p2--semi-bold c-red' id='sendPrice'></p></label></div>
<div class ='row' style='padding: 30px; width: 100px;'><p>Productid: <label id='idDiv'></p></label></div>
<div class ='row' style='padding: 30px; width: 100px;'><p>Quantity: <label id='showQuantity'></p></label></div>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

森林散布 2025-01-18 02:38:27

首先将 {$i} 添加到您的 onclick='myFunction()' 中,如 onclick='myFunction({$i})'

第二个您的 JavaScript 删除了 for 循环并将 i 添加到 function myFunction() { 就像 function myFunction(i) {

Demo

function myFunction(i) {
  var x = document.getElementById("price" + i).value;
  document.getElementById("sendPrice").innerHTML = x;

  var x = document.getElementById("id" + i).value;
  document.getElementById("idDiv").innerHTML = x;

  var x = document.getElementById("quantity" + i).value;
  document.getElementById("showQuantity").innerHTML = x;
}
<button type='button' class='btn btn-outline-primary' onclick='myFunction(1)'>".$rows['var_name']."</button>
<input type='hidden' name='price' value=".$rows['price']. ROW1" id='price1'>
<input type='hidden' value=".$rows['id']. ROW1" id='id1'>
<input type='hidden' value=".$rows['quantity']. ROW1" id='quantity1'>";

<button type='button' class='btn btn-outline-primary' onclick='myFunction(2)'>".$rows['var_name']."</button>
<input type='hidden' name='price' value=".$rows['price']. ROW2" id='price2'>
<input type='hidden' value=".$rows['id']. ROW2" id='id2'>
<input type='hidden' value=".$rows['quantity']. ROW2" id='quantity2'>";



<div id="sendPrice"></div>
<div id="idDiv"></div>
<div id="showQuantity"></div>

First add {$i} to your onclick='myFunction()' like onclick='myFunction({$i})'

second in your javascript remove the for loop and add i to function myFunction() { like function myFunction(i) {

Demo

function myFunction(i) {
  var x = document.getElementById("price" + i).value;
  document.getElementById("sendPrice").innerHTML = x;

  var x = document.getElementById("id" + i).value;
  document.getElementById("idDiv").innerHTML = x;

  var x = document.getElementById("quantity" + i).value;
  document.getElementById("showQuantity").innerHTML = x;
}
<button type='button' class='btn btn-outline-primary' onclick='myFunction(1)'>".$rows['var_name']."</button>
<input type='hidden' name='price' value=".$rows['price']. ROW1" id='price1'>
<input type='hidden' value=".$rows['id']. ROW1" id='id1'>
<input type='hidden' value=".$rows['quantity']. ROW1" id='quantity1'>";

<button type='button' class='btn btn-outline-primary' onclick='myFunction(2)'>".$rows['var_name']."</button>
<input type='hidden' name='price' value=".$rows['price']. ROW2" id='price2'>
<input type='hidden' value=".$rows['id']. ROW2" id='id2'>
<input type='hidden' value=".$rows['quantity']. ROW2" id='quantity2'>";



<div id="sendPrice"></div>
<div id="idDiv"></div>
<div id="showQuantity"></div>

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文