我以为他们可以,但是因为我不把钱放在我的嘴里(可以这么说)设置readonly属性实际上似乎没有做任何事情。
我宁愿不使用Disabled,因为我希望检查复选框与表单的其余部分一起提交,我只是不希望客户端在某些情况下能够更改它们。
#1楼
<input type="checkbox" onclick="return false" />
对你<input type="checkbox" onclick="return false" />
,我正在使用它
#2楼
我用它来实现结果:
<input type=checkbox onclick="return false;" onkeydown="return false;" />
#3楼
这里的一些答案似乎有点迂回,但这是一个小小的黑客。
<form id="aform" name="aform" method="POST">
<input name="chkBox_1" type="checkbox" checked value="1" disabled="disabled" />
<input id="submitBttn" type="button" value="Submit" onClick='return submitPage();'>
</form>
然后在jquery中,您可以选择以下两个选项之一:
$(document).ready(function(){
//first option, you don't need the disabled attribute, this will prevent
//the user from changing the checkbox values
$("input[name^='chkBox_1']").click(function(e){
e.preventDefault();
});
//second option, keep the disabled attribute, and disable it upon submit
$("#submitBttn").click(function(){
$("input[name^='chkBox_1']").attr("disabled",false);
$("#aform").submit();
});
});
演示: http : //jsfiddle.net/5WFYt/
#4楼
<input name="isActive" id="isActive" type="checkbox" value="1" checked="checked" onclick="return false"/>
#5楼
另一个“简单解决方案”:
<!-- field that holds the data -->
<input type="hidden" name="my_name" value="1" />
<!-- visual dummy for the user -->
<input type="checkbox" name="my_name_visual_dummy" value="1" checked="checked" disabled="disabled" />
disabled =“disabled”/ disabled = true
#6楼
基于上述答案,如果使用jQuery,这可能是所有输入的一个很好的解决方案:
<script>
$(function () {
$('.readonly input').attr('readonly', 'readonly');
$('.readonly textarea').attr('readonly', 'readonly');
$('.readonly input:checkbox').click(function(){return false;});
$('.readonly input:checkbox').keydown(function () { return false; });
});
</script>
我在Asp.Net MVC中使用它来设置一些只读的表单元素。 以上工作通过将任何父容器设置为.readonly来处理文本和复选框,例如以下方案:
<div class="editor-field readonly">
<input id="Date" name="Date" type="datetime" value="11/29/2012 4:01:06 PM" />
</div>
<fieldset class="flags-editor readonly">
<input checked="checked" class="flags-editor" id="Flag1