禁用的表单字段无法提交数据

10 浏览
0 Comments

禁用的表单字段无法提交数据

该问题已经有答案了禁用表单输入后不会在请求中出现

有没有办法(使用属性标志或类似的东西)使被禁用的表单字段能够提交数据?

或者,如果不可能,有没有办法通过CSS或其他属性来阻止字段编辑而不隐藏它们?

我特别的情况是数据集的标识符应该显示在表单中(不可编辑)- 如果没有更好的解决方案,我想我会在禁用的字段中使用隐藏字段来保存实际值并显示它。

admin 更改状态以发布 2023年5月23日
0
0 Comments

使用CSS中的pointer-events:none在您想要“禁用”的字段上(可能与灰色背景一起)允许POST操作,例如:


.disable{
pointer-events:none;
background:grey;
}

参考:https://developer.mozilla.org/en-US/docs/Web/CSS/pointer-events

0
0 Comments

正如已经提到的:对于READONLY无效。

如果您有一个禁用的复选框/下拉框的表单,并且需要将它们提交,您可以使用jQuery:

$('form').submit(function(e) {
    $(':disabled').each(function(e) {
        $(this).removeAttr('disabled');
    })
});

此代码在提交时将所有元素的disabled属性删除。

0