是否可以在HTML表单中将多个输入元素标记为只读或禁用,方法是将它们包装起来?
我知道您可以将表单本身设置为禁用,例如,但这当然会禁用整个表单。我想的是:
<form>
<input name="not-readonly">
<div readonly="readonly">
<input name="readonly-field-1">
<input name="readonly-field-2">
</div>
<input type="submit">
</form>
或者可以用CSS以某种方式解决这个问题?或者只能使用Javascript?
答案 0 :(得分:1)
我假设您知道如何根据您拥有34k代表的事实以常规方式禁用输入。
<input disabled="disabled" type="text" name="something"/>
当然使用jquery轻松完成(例如基于你的标记)
$('div[readonly="readonly"]').find('input').attr('disabled','disabled');
您实际上无法使用css禁用输入,但您可以使用css伪造禁用的输入:
.fakeinput {
padding: 4px;
font-family: monospace;
font-size: .8em;
color: #aaa;
border: #999 1px solid;
background: fff;
border-radius: 1px;
margin: 5px 0;
box-shadow: inset 1px 1px 2px #ddd;
}
&#13;
<p class="fakeinput">Pretend Value</p>
&#13;
答案 1 :(得分:0)
的javascript
document.getElementById("myText").disabled = true;
CSS
<INPUT NAME="realname" VALUE="Hi There" readonly>
<INPUT NAME="realname" VALUE="Hi There" disabled>
答案 2 :(得分:0)
刚刚发现您可以使用fieldset
标记禁用一组表单元素。但是,它似乎是slightly buggy in certain versions of IE。也不支持readonly
属性,遗憾的是我在这种情况下需要的属性......也许它会在以后添加?
<form>
<input name="not-disabled">
<fieldset disabled>
<input name="disabled-field-1">
<input name="disabled-field-2">
</fieldset>
<input type="submit">
</form>