使输入不可编辑而不禁用


Making an input non-editable without disabling

我有一个表格,它计算成本并相应地设置输入的值。出于明显的原因,我使用了:

$('#totalcost').attr('disabled',true);

以防止用户能够编辑成本。

然而,当我这样做的时候,我用来邮寄表单的PHP脚本不会接收输入(不仅仅是值,它根本不会读取输入)。当输入被启用时,它工作正常。

如何防止用户在PHP仍在邮寄值的情况下编辑输入?或者有更好的方法吗?

使其只读,而不是禁用:

$("#totalcost").attr('readonly', true);

您也可以在原始HTML中执行此操作,因为它不是您真正想要动态来回更改的内容。

<input id="totalcost" type="text" readonly>

使用只读属性,尽管我猜它在互联网浏览器中不起作用。

添加只读属性,如下所示:

$("#totalcost").attr('readonly', true);

添加属性readonly="true"。

$('#totalcost').attr('readonly',true);

您可以尝试:

$("#totalcost").prop("readonly",true);

在html本身或脚本中使用只读

<input type="text" name="totalcost" id="totalcost" value="" readonly>
$('#totalcost').attr("readonly", true);