javascript - 从多个按钮获取值(value)

标签 javascript php

我正在尝试从多个按钮打印一个值。按钮的值和 ID 在我的表中定义。这对于表中只有一个元素有效,但对于多个元素则不行。我想我需要以某种方式循环它。有什么建议么? (PS。不一定是按钮)

<?php
$sql_rel = "SELECT * FROM TABLE";
$result1 = mssql_query($sql_rel);
$count = mssql_num_rows($result1);
while ($row1 = mssql_fetch_assoc($result1)){
    echo '<button id="' . $row1['NAME'] . '" onClick="func()" value="'.$row1['NAME'].'">'.$row1['DESCRIPTION'].'</button>';

}



    <p id="print"></p>
    <script>

    function func(){
       var x = document.getElementById("<?php 

       $sql_rel = "SELECT * FROM TABLE";
       $result1 = mssql_query($sql_rel);
       $count = mssql_num_rows($result1);
       while ($row1 = mssql_fetch_assoc($result1)){
          echo $row1['NAME'];

       }

     ?>").value;
   document.getElementById("print").innerHTML = x;
   }
   </script>

最佳答案

尝试以下操作:

<?php
$sql_rel = "SELECT * FROM TABLE";
$result1 = mssql_query($sql_rel);
$count = mssql_num_rows($result1);
while ($row1 = mssql_fetch_assoc($result1)){
    /* Note the "this" in the onClick function */
    echo '<button id="' . $row1['NAME'] . '" onClick="func(this)" value="'.$row1['NAME'].'">'.$row1['DESCRIPTION'].'</button>';
}



<p id="print"></p>
<script>
function func(obj){
    document.getElementById("print").innerHTML = obj.value;//Change to 'obj.innerHTML' for the button's visible text (aka, $row1['DESCRIPTION'])
}
</script>

第二个答案:(刷新之前不会再更改)

<?php
$sql_rel = "SELECT * FROM TABLE";
$result1 = mssql_query($sql_rel);
$count = mssql_num_rows($result1);
while ($row1 = mssql_fetch_assoc($result1)){
    /* Note the "this" in the onClick function */
    echo '<button id="' . $row1['NAME'] . '" onClick="func(this)" value="'.$row1['NAME'].'">'.$row1['DESCRIPTION'].'</button>';
}



<p id="print"></p>
<script>
var pressed = false;
function func(obj){
    if (pressed) return;
    document.getElementById("print").innerHTML = obj.value;//Change to 'obj.innerHTML' for the button's visible text (aka, $row1['DESCRIPTION']);
    pressed = true;
}
</script>

第三个答案:(抱歉让您久等了)

<?php
$sql_rel = "SELECT * FROM TABLE";
$result1 = mssql_query($sql_rel);
$count = mssql_num_rows($result1);
while ($row1 = mssql_fetch_assoc($result1)){
    /* Note the "this" in the onClick function */
    echo '<button id="' . $row1['NAME'] . '" onClick="func(this)" value="'.$row1['NAME'].'">'.$row1['DESCRIPTION'].'</button>';
}



<p id="print"></p>
<script>
function func(obj){
    if (obj.pressed) return;
    document.getElementById("print").innerHTML = document.getElementById("print").innerHTML + " " + obj.value;//Change to 'obj.innerHTML' for the button's visible text (aka, $row1['DESCRIPTION']);
    obj.pressed = true;
}
</script>

关于javascript - 从多个按钮获取值(value),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35823144/

相关文章:

javascript - 单击与 Javascript 具有相同类名的类按钮

php - 从另一个静态方法调用静态方法 : PHP Fatal error: Call to undefined function

javascript - CSS Transition - 顺利显示div

php - 拉维尔 : enabling debug toolbar

php - Ajax 和 php 响应不起作用

php - 从 Mysql DB 中的文本字段中检索一段文本,直到找到特殊字符

php - MySQL 选择另一个表中缺少的条目

javascript - 如何在没有装饰器语法的情况下使用 mobx-react 'observer' ?

javascript - 除了 switch 语句之外的不同写法

javascript - 如何将数据表添加到动态生成的 Highcharts 中