layui 下 监听单选框radio改变事件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了layui 下 监听单选框radio改变事件相关的知识,希望对你有一定的参考价值。

参考技术A 若是使用jquery的话

注意:如果是引⽤了layui的样式和⽅法,则上⾯的监听事件失效,被layui接管了
而且如果你有多个radio,需要加入lay-filter来区分,否则监听不起作用
所以应该如下写法:

Layuilayui 单选框多选框radio 元素判断是必填项 lay-verify=‘required‘

layui 单选框、多选框radio 元素判断是必填项 lay-verify=‘required‘


大家好,又见面了,我是你们的朋友全栈君。

简单验证复选框,单选框必填

例子代码:

 class="layui-input-block">
      <input type="checkbox" name="like" lay-skin="primary" lay-verify="otherReq" title="写作">
      <input type="checkbox" name="like" lay-skin="primary" lay-verify="otherReq" title="阅读">
      <input type="checkbox" name="like"  lay-verify="otherReq" title="游戏">
    </div>
  </div>
  <div class="layui-form-item">
    <label class="layui-form-label">单选框</label>
    <div class="layui-input-block">
      <input type="radio" name="sex" value="" lay-verify="otherReq" title="" >
      <input type="radio" name="sex" value="" lay-verify="otherReq" title="">
    </div>
  </div>
  
  <div class="layui-form-item">
    <div class="layui-input-block">
      <button class="layui-btn" lay-submit="" lay-filter="demo1">立即提交</button>
    </div>
  </div>
</form>

<script src="//res.layui.com/layui/dist/layui.js" charset="utf-8"></script>
<!-- 注意:如果你直接复制所有代码到本地,上述js路径需要改成你本地的 -->
<script>
layui.use(['form', 'layedit', 'laydate'], function()
  var form = layui.form
  ,layer = layui.layer
  ,layedit = layui.layedit
  ,laydate = layui.laydate;
  

  //自定义验证规则
  form.verify(
    otherReq: function(value,item)
      var $ = layui.$;
      var verifyName=$(item).attr('name')
      , verifyType=$(item).attr('type')
      ,formElem=$(item).parents('.layui-form')//获取当前所在的form元素,如果存在的话
//,verifyElem=formElem.find('input[name='+verifyName+']')//获取需要校验的元素
,verifyElem=formElem.find("input[name='"+verifyName+"']")//获取需要校验的元素
,isTrue= verifyElem.is(':checked')//是否命中校验
,focusElem = verifyElem.next().find('i.layui-icon');//焦点元素
if(!isTrue || !value)
        //定位焦点
        focusElem.css(verifyType=='radio'?"color":"#FF5722":"border-color":"#FF5722");
        //对非输入框设置焦点
        focusElem.first().attr("tabIndex","1").css("outline","0").blur(function() 
            focusElem.css(verifyType=='radio'?"color":"":"border-color":"");
         ).focus();
        return '必填项不能为空';

    
  );
 
  //监听提交
  form.on('submit(demo1)', function(data)
    layer.alert(JSON.stringify(data.field), 
      title: '最终的提交信息'
    )
    return false;
  );
 
);
</script>

</body>
</html>

以上是关于layui 下 监听单选框radio改变事件的主要内容,如果未能解决你的问题,请参考以下文章

layui 单选框选中事件

layui 获取radio单选框选中的值

layui根据条件判断验证(单选按钮)

layui radio 单选框 效果 显示不来

JS 改变单选框的值。radio.checked=true; 为何改变不了。没反应。

Layuilayui 单选框多选框radio 元素判断是必填项 lay-verify=‘required‘