有没有办法(使用属性标志或类似的东西)启用禁用提交数据的表单字段?
或者,如果那是不可能的,有没有办法阻止字段使用css或任何其他属性进行编辑而不是隐藏它们?
我的特殊情况是一个数据集的标识符,应该以表格形式显示(不可编辑) - 如果没有更好的解决方案,我想我会使用一个隐藏字段,除了被禁用的字段以保持实际显示它的已禁用值 .
签出只读属性http://www.w3schools.com/tags/att_input_readonly.asp
未提交具有 Disabled 属性的元素,或者您可以说他们的值未发布 .
Disabled
即
<input type="textbox" name="Percentage" value="100" disabled="disabled" />
仅供参考,
禁用的控件无法获得焦点 .
在选项卡导航中跳过禁用的控件 .
无法成功发布已禁用的控件 .
您可以在案例中使用 readonly 属性,这样您就可以发布您的字段数据 .
readonly
<input type="textbox" name="Percentage" value="100" readonly="readonly" />
只读元素获得焦点但用户无法修改 .
标签导航中包含只读元素 .
只读元素已成功发布 .
Note: READONLY不适用于复选框和选择标签
Ref from
如前所述: READONLY 不适用于 <input type='checkbox'> 和 <select>...</select> .
READONLY
<input type='checkbox'>
<select>...</select>
如果你有一个带有禁用的 Form 复选框/选择并且需要提交它们,你可以使用jQuery:
Form
$('form').submit(function(e) { $(':disabled').each(function(e) { $(this).removeAttr('disabled'); }) });
此代码从提交中的所有元素中删除 disabled 属性 .
disabled
在要禁用的字段上使用CSS pointer-events:none(可能与灰色背景一起),允许POST操作,如:
<input type="text" class="disable"> .disable{ pointer-events:none; background:grey; }
参考:https://developer.mozilla.org/en-US/docs/Web/CSS/pointer-events
我们也可以只使用以下属性的readonly -
readonly onclick ='return false;'
这是因为如果我们只使用readonly那么单选按钮将是可编辑的 . 为了避免这种情况,我们可以使用readonly与上面的组合 . 它将限制编辑,元素的值也将在表单提交期间传递 .
5 回答
签出只读属性http://www.w3schools.com/tags/att_input_readonly.asp
未提交具有
Disabled
属性的元素,或者您可以说他们的值未发布 .即
仅供参考,
禁用的控件无法获得焦点 .
在选项卡导航中跳过禁用的控件 .
无法成功发布已禁用的控件 .
您可以在案例中使用
readonly
属性,这样您就可以发布您的字段数据 .即
仅供参考,
只读元素获得焦点但用户无法修改 .
标签导航中包含只读元素 .
只读元素已成功发布 .
Note: READONLY不适用于复选框和选择标签
Ref from
如前所述:
READONLY
不适用于<input type='checkbox'>
和<select>...</select>
.如果你有一个带有禁用的
Form
复选框/选择并且需要提交它们,你可以使用jQuery:此代码从提交中的所有元素中删除
disabled
属性 .在要禁用的字段上使用CSS pointer-events:none(可能与灰色背景一起),允许POST操作,如:
参考:https://developer.mozilla.org/en-US/docs/Web/CSS/pointer-events
我们也可以只使用以下属性的readonly -
readonly onclick ='return false;'
这是因为如果我们只使用readonly那么单选按钮将是可编辑的 . 为了避免这种情况,我们可以使用readonly与上面的组合 . 它将限制编辑,元素的值也将在表单提交期间传递 .