为什么 contenteditable="false" 不起作用?

问题描述 投票:0回答:1

我有一个 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 中测试了这个问题,它们的行为方式都是相同的。

html-table contenteditable
1个回答
0
投票

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> 
...
");
?>
© www.soinside.com 2019 - 2024. All rights reserved.