如何在html标记、javascript和php之间传递变量

如何在html标记、javascript和php之间传递变量,php,javascript,mysql,variables,input,Php,Javascript,Mysql,Variables,Input,我有几个div,它们是由php脚本自动生成的。每个div中都有来自mysql数据库的数据和记录。和具有唯一ID值的隐藏输入。我不想做的是,当我单击每个div时,我想打开中间有div的覆盖,并使用此ID访问数据库中的另一个数据。我有工作服。我只是不知道如何传递那个变量 是这样的: echo "<div class='friend'>".$a["username"]."<input type='hidden' value='$id'/>"."</div>"; e

我有几个div,它们是由php脚本自动生成的。每个div中都有来自mysql数据库的数据和记录。和具有唯一ID值的隐藏输入。我不想做的是,当我单击每个div时,我想打开中间有div的覆盖,并使用此ID访问数据库中的另一个数据。我有工作服。我只是不知道如何传递那个变量

是这样的:

echo "<div class='friend'>".$a["username"]."<input type='hidden' value='$id'/>"."</div>";
echo '<ul>';
echo '<li><a href="#' . $id . '" class="friend">' . $a["username"] . '</a></li>';
echo '</ul>';
$('.friend').click(function(e) {
  e.preventDefault();

  $.get('/userDetails.php?uid=' + $(this).attr('href'), function(data) {
    alert(data);
  });
});
echo“$a[“用户名”]”;
我希望有人能理解我的要求。:)我知道这解释很糟糕。

这个

       echo "<div class='friend' onclick='(function(id){ $(\'#overlay\').html(id).show(); }(\'$id\'));'>".$a["username"]."<input type='hidden' value='$id'/>"."</div>";
echo“$a[“用户名”]”;

类似的方法应该可以:

$('div.friend').click(function(){
   val = $(this).find("input").val();

   //open your overlay with the value as a parameter
});

您的干净代码应如下所示:

echo '<div class="friend"> ' . $a["username"] . '<input type="hidden" value="' . $id . '"/></div>';

这能做什么?我需要得到那个id并把它放到php变量中?无论如何,感谢您的快速回答。然后您需要使用ajax调用php脚本,并将val变量作为GET或POST变量传递。我以为你已经这样做了,因为你说你已经让覆盖层工作了。我刚刚明白了!:)谢谢:)这太好了,我只有一个问题,我不能用它触发叠加。它根本不起作用。知道为什么吗,我把任何div id或类作为触发器,它工作得很好。但比我说的要多。朋友什么都没有。