在模式窗口中显示页面上单击的值(链接)以及索引值


Displaying the clicked value (link) on a page in a modal window together with the index value

>我有一个页面,表格中有一些值,这些值是从.csv文件中读取的并显示。值随时间变化(动态),所以我在 PHP 中使用 for 循环,将文件大小作为循环的限制并显示值,每个值都是单击时显示模态窗口的链接。

这是我的代码:

<?php

if (($csv = fopen("csv.csv", "r")) !== FALSE) 
{
        while (($data = fgetcsv($csv, 1000, ",")) !== FALSE) 
        {
            
            $f = $data; 
        }
        fclose($csv);
}

$array=array();
for($i=0;$i<sizeof($f);$i++)
{
    $array[$i]=$f[$i];

    echo '<table ><tr><td style="  height:25px; vertical-align: middle;"><a href="#" onclick="overlay()"><input type="button" value="'.$array[$i].'"></a></td></tr></table>
<div id="overlay">
    <div>
        
     <table style="height: 37px; ">
          <tbody>
            <tr>
              <td style="text-align: left;">color:</td>
              <td  align="left"><input name="color" value="'.$array[$i].'"></td>
            </tr>
              
             <tr>
              <td style=" text-align: left;">index:</td>
              <td  align="left"><input name="index" value="'.$i.'"></td>
            </tr>       
             <tr>
              <td style=" text-align: left;">brightness:</td>
              <td  align="left"><input name="brightness"></td>
            </tr>
          </tbody>
        </table>
       
  
<br><input value="Submit" type="submit"><a href="#" onclick="overlay()"><button >X</button></a>
</div>
    </div>';}?>

模态窗口应包含单击的相应颜色、索引和亮度字段。

我有一个用于覆盖的 css,其中字段最初是隐藏的,

我的csv文件是:

绿色, 红色, 白色, 蓝色, 黄色

单击具有这些值的按钮(链接)时,它将显示一个模式窗口,但它始终显示索引值为 0 的所有按钮的第一个值(始终为绿色)。我在某处做错了吗?我应该使用一些 JavaScript 来获取此功能吗?

(我不应该在任何地方使用jQuery)

您可以在页面上仅使用一个ID,因为我看到您有很多id="overlay",这就是为什么它会打开第一个

使您的 id 像覆盖 + 索引,并将此名称作为参数路径到 onclick="overlay(覆盖 + 索引)