<?php
foreach($_color_swatch as $_inner_option_id){
preg_match_all('/((#?[A-Za-z0-9]+))/', $_option_vals[$_inner_option_id]['internal_label'], $matches);
if (count($matches[0]) > 0) {
$color_value = $matches[1][count($matches[0])-1];
?>
<li>
<input type="hidden" id="fakecolor" value="<?php echo $color_value;?>"/>
<div onclick="alert(document.getElementById('fakecolor').value);">
<img src="<?php echo $color_value;?>.png" /></div>
</li>
<?php
}
}
?>
这适用于显示图像,使用$ color_value但我需要将隐藏输入的值传递给另一个javascript函数。 当我点击div时,无论foreach中有多少个都只显示一个值。 任何人都可以给我一点帮助吗?谢谢。只显示隐藏输入的一个值
这是输出:
<li>
<input type="hidden" id="fakecolor" value="red"/>
<div onclick="alert(document.getElementById('fakecolor').value);"><img src="red.png"/></div>
</li>
<li>
<input type="hidden" id="fakecolor" value="blue"/>
<div onclick="alert(document.getElementById('fakecolor').value);"><img src="blue.png"/></div>
</li>
<li>
<input type="hidden" id="fakecolor" value="white"/>
<div onclick="alert(document.getElementById('fakecolor').value);"><img src="white.png"/></div>
</li>
<li>
<input type="hidden" id="fakecolor" value="green"/>
<div onclick="alert(document.getElementById('fakecolorx').value);"><img src="green.png"/></div>
</li>
但是,当我在每个的div点击时,它显示所述第二,蓝色的唯一的值。
当存在多个项目时,生成的HTML和JavaScript的外观如何? – David 2013-03-26 19:04:51
尝试每个隐藏的 – Hackerman 2013-03-26 19:12:15