0

ファイルから読み取られて表示されるテーブルにいくつかの値を含むページが.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を使用することは想定されていません)

4

1 に答える 1

3

ページで使用できる ID は 1 つだけです。id="overlay" がたくさんあることがわかります。そのため、最初の ID が開きます。

ID をオーバーレイ + インデックスのようにし、この名前をパラメータとして onclick="overlay(overlay + Index) にパスします。

于 2013-11-05T09:27:26.417 に答える