Javascript 在模式窗口中的页面上显示单击的值(链接)以及索引值
我有一个页面,表格中有一些值,这些值是从Javascript 在模式窗口中的页面上显示单击的值(链接)以及索引值,javascript,php,html,foreach,Javascript,Php,Html,Foreach,我有一个页面,表格中有一些值,这些值是从.csv文件中读取的 展示。值随时间变化(动态),因此我在PHP中使用for循环,文件大小作为循环的限制,并显示值,每个值都是单击时显示模式窗口的链接 这是我的代码: <?php if (($csv = fopen("csv.csv", "r")) !== FALSE) { while (($data = fgetcsv($csv, 1000, ",")) !== FA
.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的原因
将您的id设置为overlay+Index,并将此名称作为参数路径设置到onclick=“overlay(overlay+Index)页面上只能使用一个id,因为我看到您有很多id=“overlay”,这就是它打开第一个id的原因
将您的id设置为overlay+Index,并将此名称作为参数路径设置到onclick=“overlay(overlay+Index)页面上只能使用一个id,因为我看到您有很多id=“overlay”,这就是它打开第一个id的原因
将您的id设置为overlay+Index,并将此名称作为参数路径设置到onclick=“overlay(overlay+Index)页面上只能使用一个id,因为我看到您有很多id=“overlay”,这就是它打开第一个id的原因
将您的id设置为overlay+Index,并将此名称作为参数设置到您的onclick=“overlay(overlay+Index)似乎是合适的解决方案,但我有一个疑问。。我应该在覆盖css中做什么更改?就像这样。。。覆盖{visibility:hidden;position:absolute;z-index:1000;}和覆盖div{width:530px;margin:100px auto;}这个div必须是这样的:
所以你可以这样做:.overlay{…}
输入将是:onclick=“overlay(overlaySomeIndex)
和函数:函数覆盖(showId){el=document.getElementById(showId);
似乎是合适的解决方案,但我有一个疑问..我应该在覆盖css中做什么更改?它是这样的..覆盖{可见性:隐藏;位置:绝对;z索引:1000;}和overlay div{width:530px;margin:100px auto;}这个div必须是这样的:
所以你可以这样:.overlay{…}
输入将是:onclick=“overlay(overlaySomeIndex)
和function:function overlay(showId){el=document.getElementById(showId);
似乎是合适的解决方案,但我有一个疑问..我应该在覆盖css中做什么更改?它是这样的…覆盖{可见性:隐藏;位置:绝对;z索引:1000;}和覆盖div{width:530px;margin:100px auto;}这个div必须是这样的:
所以你可以这样:.overlay{…}
输入将是:onclick=“overlay(overlaySomeIndex)
和函数:函数overlay(showId){el=document.getElementById(showId)
似乎是合适的解决方案,但我有一个疑问..我应该在覆盖css中做什么更改?它是这样的…覆盖{可见性:隐藏;位置:绝对;z索引:1000;}和覆盖div{宽度:530px;边距:100px自动;}这个div必须是这样的:
所以你可以这样做:.overlay{…}
输入将是:onclick=“overlay(overlaySomeIndex)
和函数:函数overlay(showId){el=document.getElementById(showId);