layui框架内select禁止点击和恢复点击

6 篇文章 0 订阅
5 篇文章 0 订阅
<form class="layui-form"> <!-- 提示:如果你不想用form,你可以换成div等任何一个普通元素 -->
     <div class="layui-row">
         <div class="layui-col-xs6" style="padding: 0 5px">
              <div class="layui-form-item">
                   <label class="layui-form-label form_label">计划类型<span class="field_required">*</span></label>
                   <div class="layui-input-block form_block">
                       <select name="pType" class="testNull" title="计划类型" lay-verify="required" lay-filter="pType" autocomplete="off"></select>
                   </div>
               </div>
         </div>
         <div class="layui-col-xs6" style="padding: 0 5px">
              <div class="layui-form-item">
                   <label class="layui-form-label form_label">周期类型</label>
                   <div class="layui-input-block form_block">
                        <select name="cycleType" lay-verify="required" class="testNull" title="周期类型" autocomplete="off"></select>
                   </div>
              </div>
        </div>
    </div>
</form>
<script src="layui/layui.js"></script>
<script>
layui.use('form', function(){
  var layForm= layui.form;
 function initForm(type, data) {
    //周期类型默认不可更改
     $('select[name="cycleType"]').attr('disabled','disabled')
        layForm.render()
    }
//根据其他下拉内容更改周期下拉框的值和控制是否可下拉
layForm.on('select(pType)', function (data) {
     var value = data.value;
     if(value == '01'){
         $('select[name="cycleType"]').val('1');
         $('select[name="cycleType"]').attr('disabled','disabled')
         layForm.render('select');
         layForm.render()
     }else{
         $('select[name="cycleType"]').val('2');
         $('select[name="cycleType"]').removeAttr("disabled");
         layForm.render('select');
         layForm.render()
     }
})

});
</script>

也可以直接 放到下拉选择框 select 上 (HTML),这样默认渲染出来的效果就是这样的:

<select name="cycleType" disabled lay-filter="cycleType">...</select>

也可以用 jquery写js代码 控制下拉框 select 禁用效果:

var form = layui.form;
$('select[name="cycleType"]').attr("disabled","disabled");
layForm.render('select');

需要恢复下拉的话

$('select[name="cycleType"]').removeAttr("disabled");
layForm.render('select');
layForm.render()

注意事项:

  • 依赖加载模块:form
  • 用js或jquery把属性设置为 disabled
  • 最后记得刷新 select 选择框渲染 form.render('select')
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

张大大大大旭

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值