所以我一直在尝试在if循环中放入一个if语句。现在我的知识不是很丰富,但是当我环顾四周时,我没有发现任何问题。.我将if语句放置在内部和外部,但是if语句即使有三个条目也只能用于一个条目。>
while($r=mysql_fetch_array($res))
{
if (isset($r[3])) {$urlvalue = $r[3];
$disable ='<script>
document.getElementById("adurl").disabled = true;
document.getElementById("update").disabled = true;
</script>';
}
else {$urlvalue = "";}
print "<tr><form style='text-align:center;' method='post' action='loginspotlight.php'>";
print "<td style='text-align:center;'>$r[0]</td><td style='text-align:center;'>$r[1]</td><td style='text-align:center;'>$r[2]</td><td style='text-align:center;'><input id='adurl' name='adurl' type='url' value='$urlvalue'/></td><td style='text-align:center;'>$r[4]</td><td style='text-align:center;'>$r[5]</td><td>";
print "<input align='center' type='hidden' value='$r[0]' name='spotid'/>";
print "<div width='100px'><input id='update' align='center' type='submit' name='cmd' value='Update'/><div>$disable</div></div>";
print "</td></form></tr>";
}
print "</table><br><br>";
答案 0 :(得分:1)
问题是您对多个元素使用了相同的ID。
除了调用要执行的JavaScript之外,为什么不直接在输出时禁用该元素呢?
RecyclerView
或者,您可以将查询结果的ID放入元素的ID中,以使其唯一。
例如:
while($r=mysql_fetch_array($res))
{
if (isset($r[3]))
{
$urlvalue = $r[3];
$disabled = 'disabled="disabled"';
}
else
{$urlvalue = "";}
print "<tr><form style='text-align:center;' method='post' action='loginspotlight.php'>";
print "<td style='text-align:center;'>$r[0]</td><td style='text-align:center;'>$r[1]</td><td style='text-align:center;'>$r[2]</td><td style='text-align:center;'><input id='adurl' name='adurl' type='url' value='$urlvalue' $disabled/></td><td style='text-align:center;'>$r[4]</td><td style='text-align:center;'>$r[5]</td><td>";
print "<input align='center' type='hidden' value='$r[0]' name='spotid'/>";
print "<div width='100px'><input id='update' align='center' type='submit' name='cmd' value='Update' $disabled/><div>$disable</div></div>";
print "</td></form></tr>";
}
print "</table><br><br>";