0

我正在动态创建图像列表,以下是代码

<?php
for ( $counter = 0; $counter < $obj1->id; $counter ++)
{ ?>
<tr><td> Week <?php echo($counter+1); ?>
</td><td><?php echo" <a href=\"#hiddenDiv\" rel=\"facebox\";>";?>
<img src="tue.png"/ id="image" value="<?php echo $counter+1;?>" >
</a></td></tr>
<?php } ?>

当用户单击图像时,会打开一个表单。每个图像代表一周,因此我需要唯一标识用户在哪一周插入数据。我需要该图像的 id,通过它我可以识别一周。单击图像后,将调用以下函数

function pc(){
var temp = document.getElementById("image");
alert(temp.value);
}

但我越来越“未定义”。有人可以帮我吗?

谢谢

提前致谢

4

2 回答 2

2

您会注意到我更改了 img 标签上的 id,这意味着每个新图像都将具有当前计数器的 id。

我还在链接中添加了一个 onclick 事件,并将计数器传递给 js 函数。

<?php
for ( $counter = 0; $counter < $obj1->id; $counter ++)
{ ?>
<tr><td> Week <?php echo($counter+1); ?>
</td><td><?php echo" <a href=\"#hiddenDiv\" onclick=\"pc(<?php echo $counter;?>)\" rel=\"facebox\";>";?>
<img src="tue.png"/ id="<?php echo $counter;?>" value="<?php echo $counter+1;?>" >
</a></td></tr>
<?php } ?>

另外,删除 js 函数中“id”周围的引号:

    函数 pc(id){
    var temp = document.getElementById(id);
    警报(温度值);
    }

于 2012-04-06T14:55:20.507 回答
-1

您必须传递标签的 id。喜欢document.getElementById("image").

function pc(id){
var temp = document.getElementById("image");
alert(temp.value);
}
于 2012-04-06T14:53:46.763 回答