javascript getElementById重新填充多行

时间:2012-12-09 21:17:19

标签: php javascript getelementbyid

我从网站公式获得了一些东西:

 echo "<tr>";
 echo "<td>" . $row['platform_name'] . "</td>";
 echo "<td><input name='id[]' type='hidden' value='".$row['id']."' /><input name='id_acc_ref[]' type='hidden' value='".$row['id_acc_ref']."' /><input name='platform_type[]' type='hidden' value='".$row['platform_type']."' /><input name='platform_name[]' type='hidden' value='".$row['platform_name']."' />Every <input id='scan_freq1' name='scan_freq1[]' type='number' style='width:50px;text-align:center' min='0' max='256' value='".$row['scan_frequency']."' placeholder='0000-00-00' /> week(s)</td>";
 echo "<td><input type='text' class='datepicker' name='first_scan_date1[]' style='text-align:center' value='".$row['first_scan_date']."' placeholder='0000-00-00' /></td>";
 echo "<td><input id='next_scan_date1' name='next_scan_date1[]' type='text' readonly='readonly' style='text-align:center' placeholder='".$row['next_scan_date']."' /></td>";
 echo "<td style='text-align:center'><img src='../images/ok.gif' id='save_conf1'></td>";
 echo "</tr>"; 

如您所知,它们都是数组,这取决于数据库中元素的数量。我有一些简单的代码,从数据库中获取结果并基于它们,我想在该表单的范围内显示图像(提交按钮覆盖)。

function test(resp)
  {
    if (resp == 1) 
    {
        document.getElementById('save_conf1').style.visibility = 'visible';
    }

但是在更新之后它确实可见我的第一个元素(图像),无论我选择哪个,任何想法如何为所有人填充它?

感谢您的建议。

1 个答案:

答案 0 :(得分:0)

如果每个<img src=...>都有唯一的idid='save_conf1'id='save_conf2'id='save_conf3'etc.),您可以使用{{1}循环 -

for

另一种方法是使用function test(resp) { if (resp == 1) { var max = ... //total number of <img src=...> with id='save_conf#' for (var i=1;i<=max;i++) { document.getElementById('save_conf'+i).style.visibility = 'visible'; } } class 即。 getElementByClassName

<img src=... class='save_conf'>

使用function test(resp) { if (resp == 1) { document.getElementByClassName('save_conf').style.visibility = 'visible'; } 适用于大多数现代浏览器,但不适用于IE&lt; 8.另见 - stackoverflow.com/questions/1933602/how-to-getelementbyclass-instead-of-getelementbyid-with-javascript