如何使用php在循环中单击按钮显示数据

时间:2015-09-02 13:43:45

标签: javascript php

我有一个项目,我在while循环中显示一个按钮标记。在每个按钮单击时,我想显示一个带有相应UserId的警告框。这是我的代码:

    <?php 
 $data = mysql_query("Select RegisterId,FName,Image1  from Information where RegisterID='$profileMonth1'") or die(mysql_error());
 while ($dis1 = mysql_fetch_array($data)) {
?>    
<div id="demo1" value="<?php echo "$RegisterId" ?>">
<button onClick="validate()">Show Interest</button>
</div> 
<?php } ?>

这是我的验证功能:

   function validate1(id2)
                {
   // var id2;

    id2 = document.getElementById('demo2').getAttribute('value');
                alert(id2);
}

但它总是向我显示最后一个用户ID ..而我想在每次点击时为每个用户显示userid。

有人可以帮忙吗?

4 个答案:

答案 0 :(得分:0)

在您的代码中尝试此操作

HTML:

<button onClick="validate('<?php echo $RegisterId; ?>')">Show Interest</button>

使用Javascript:

function validate(id2)
   {
            alert(id2);
   }

答案 1 :(得分:0)

在这里man,你调用的函数是未定义的validate1,你也不需要在你的函数声明中得到任何参数,因为你在调用时没有传递任何参数。

 <?php 
 $data = mysql_query("Select RegisterId,FName,Image1  from Information where RegisterID='$profileMonth1'") or die(mysql_error());
 while ($dis1 = mysql_fetch_array($data)) {
?>    
<div id="demo" value="<?php echo "$RegisterId" ?>">
<button onClick="validate()">Show Interest</button>
</div> 

JS

function validate(){
    var id2 = document.getElementById('demo').getAttribute('value');
    alert(id2);
}

答案 2 :(得分:0)

您的代码需要进行一些修改。

首先,您已将id发送到javascript函数,但是,您没有将id传递给它。

<强> PHP

<?php 
$data = mysql_query("Select RegisterId,FName,Image1  from Information where RegisterID='$profileMonth1'") or die(mysql_error());
while ($dis1 = mysql_fetch_array($data)) {
?>
<div id="demo1" value="<?php echo $dis1['RegisterId'];?>">
    <button onClick="validate('<?php echo $dis1['RegisterId'];?>')">Show Interest</button>
</div>
<?php } ?>

<强>使用Javascript:

function validate1(id2) {
  // var id2;
  //id2 = document.getElementById('demo2').getAttribute('value');
  alert(id2);
}

答案 3 :(得分:0)

使用此代码,您的点击量甚至不应返回最后一个ID。你的javascript函数看起来不太好。

这应该有用;

<?php 
$data = mysql_query("Select RegisterId,FName,Image1  from Information where RegisterID='$profileMonth1'") or die(mysql_error());
while ($dis1 = mysql_fetch_array($data)) {
?>
<!-- removed id attribute, as they're unique, you can't set it to every div. 
If you really need id attribute, you can set one by using your RegisterId (e.g. id="demo-<?php echo $RegisterId; ?>)
And moved value attribute to button tag, it's much more useful in it. -->
<div>
<button onClick="validate(this)" value="<?php echo "$RegisterId" ?>">Show Interest</button>
</div> 
<?php } ?>

的Javascript

function validate(element){
    alert(element.value)
}

通过这种方式,您可以更轻松地在其他内容中使用它。