select 下拉框不可选中
原创
©著作权归作者所有:来自51CTO博客作者六月的雨在51CTO的原创作品,请联系作者获取转载授权,否则将追究法律责任
select 下拉框不可选中
disabled属性
定义和用法
disabled 属性规定禁用下拉列表。被禁用的下拉列表既不可用,也不可点击。
可以设置 disabled 属性,直到满足某些条件(比如选择一个复选框),才恢复用户对该下拉列表的使用。然后,可以使用 JavaScript 来清除 disabled 属性,以使下拉列表变为可用状态。
浏览器支持
所有浏览器都支持 disabled 属性。
实例
<select disabled="disabled">
<option value ="volvo">Volvo</option>
<option value ="saab">Saab</option>
<option value="opel">Opel</option>
<option value="audi">Audi</option>
</select>
业务应用
<div class="form-group">
<label class="col-sm-3 control-label">计划包含知识点:</label>
<div class="col-sm-8">
<select th:if="${detailPlan.isPublish} == 1" disabled="disabled" id="detailPlanKpIds" name="detailPlanKpIds" class="form-control select2-multiple" multiple>
<option th:each="kp:${kps}" th:value="${kp.kpId}" th:text="${kp.kpName}" th:selected="${detailPlan.detailPlanKpIds?.contains(kp.kpId)}"></option>
</select>
<select th:if="${detailPlan.isPublish} == 0" id="detailPlanKpIds" name="detailPlanKpIds" class="form-control select2-multiple" multiple>
<option th:each="kp:${kps}" th:value="${kp.kpId}" th:text="${kp.kpName}" th:selected="${detailPlan.detailPlanKpIds?.contains(kp.kpId)}"></option>
</select>
</div>
</div>
当isPublish=1 时不可编辑select
使用disabled属性的select框值不能向后台传递,如果需要在页面展示时禁用select选择属性,但是提交数据时又需要提交select属性值,此时需要在提交之前移除disabled属性
移除disabled属性
function submitHandler() {
if ($.validate.form()) {
$("#detailPlanKpIds").removeAttrs("disabled");
$.operate.save(prefix + "/edit", $('#form-detailPlan-edit').serialize());
}
}