我有一个 C.R.U.D.应用程序使用 PHP 构建许多列,如下所示。该功能不允许用户编辑,只允许左键单击显示对话框,右键单击运行您看到的功能。 问题是该字段总是打开允许输入,我如何防止这种情况,为什么 contenteditable="false" 不阻止它?我需要它更像一个按钮而不是可编辑字段,但按钮很难与其他可编辑字段相适应。
<?php
Echo ("
...
<td $brbCols contenteditable=\"false\"
class=\" W3W c24 cent\"
id=\"w3w:$row[recordID]\"
oncontextmenu=\"mapWhat3Words('$row[w3w]');return false; \"
onClick=\"empty('w3w:$row[recordID]'); getAPRSLocations('$row[aprs_call], $row[recordID], $row[latitude],$row[longitude],$row[callsign],$row[netID], W3W');\"
style=\"cursor: pointer;\">
<div class='$class' readonly> $row[w3w] </div>
</td>
...
");
?>
我尝试使用CSS和后来的JavaScript在创建字段后添加contenteditable =“false”,但它也不起作用。 我已经在 Safari、FireFox 和 Chrome 中测试了这个问题,它们的行为方式都是相同的。
contenteditable 属性用于使元素可编辑,但将其设置为“false”可能不会阻止焦点和编辑。为了防止编辑,请尝试使用只读属性。
<?php
echo ("
...
<td $brbCols readonly
class=\" W3W c24 cent\"
id=\"w3w:$row[recordID]\"
oncontextmenu=\"mapWhat3Words('$row[w3w]');return false; \"
onClick=\"empty('w3w:$row[recordID]'); getAPRSLocations('$row[aprs_call], $row[recordID], $row[latitude],$row[longitude],$row[callsign],$row[netID], W3W');\"
style=\"cursor: pointer;\">
<div class='$class'> $row[w3w] </div>
</td>
...
");
?>