javascript - HTML 选择元素的只读等效项

标签 javascript html dom prototypejs

<分区>

HTML 选择字段是否有等同于 HTML 输入的 readOnly="true" 的属性或技术?

我有一个表单选择字段,我想禁用它,但在发布表单时仍然传递。如果这是一个 HTML 输入,我会做这样的事情

$('select_id').setAttribute('readOnly', 'true');

并且浏览器会将字段呈现为不可编辑,但它的值仍会传递到后端。我想要类似的 HTML 选择,但执行以下操作

$('#select_id').setAttribute('readOnly', 'true');

没用。该属性已成功添加到 DOM,但浏览器仍将其呈现为可选。

我意识到我可以做以下事情

$('#input_id').disabled();

但是当一个字段被禁用时,它的值不会传递到后端。

我想要一种方法来禁用此选择字段但仍然传递到后端。

(示例使用 Prototype JS,但我对任何通用解决方案感兴趣)

最佳答案

禁用除所选选项之外的所有选项:

<select>
<option disabled="disabled">1</option>
<option selected="selected">2</option>
<option disabled="disabled">3</option>
</select>

这样下拉菜单仍然有效(并提交其值),但用户无法选择其他值。

关于javascript - HTML 选择元素的只读等效项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11976348/

相关文章:

javascript - Mongodb,按 datediff 分组并获取小时数

javascript - 当外部div和内部div具有相同的类时想要删除内部div的类

javascript - Jquery getJson 请求被取消

javascript - jQueryparents() 和parent().parent() 只能看到上一级?

javascript - 如何更改 DOM 元素?

javascript - 反转字符串而不改变句子中单词的顺序

javascript - jQuery 中如何判断一个元素是否存在?

javascript - 在 Canvas 中绘制文本

HTML - 通过不显示隐藏和取消隐藏 div

java使用StAX以通用方式获取子元素